February 27th, 2008 by Kyle
Tags: , , , , , , , ,
Posted in: Flex, LCDS

Here are some debugging tips I provided to a customer this week regarding debugging ant tasks that seemingly compiled a Flex app that used dataservices fine, but the app didn’t seem to get any data. The are generally useful, so I thought I would post them.

1. Try setting fork=”false” in your mxmlc and compc ant task, since forking the compile process will hide the stdout and stderr streams from the compile process and hide any errors or warnings that may be happening in the compile process, setting the fork to false will allow you to see any compile output in your console.

2. In your ant target echo out a formatted statement that would represent the equivalent mxmlc (or compc) commandline statement with all variables and relative paths, etc. resolved. Then you can use this echoed statement to run against mxmlc to help detangle yourself from ant to rule that out as a source of problems or rule out any pathing issues.
(Maybe you are not pointing to correct sevices-config.xml file?)

3. Make sure your dataservice tags and dataservice operations have fault handlers. (Maybe faults are being returned from the dataservice or the operation, but they are not being handled.)

4. Compile the Flex app with and run in the debug Flash Player. This should produce logging info in the flashlog.txt that is helpful for watching the network traffic between your Flex app and a server and may help narrow down the issue.
http://livedocs.adobe.com/flex/201/html/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Book_Parts&file=logging_125_10.html

5. Look in your LCDS install dir under resources/config at the services-config.xml. This file is a sample config file that has comments explaining the various settings. You want to look at the logging tag and enable more verbose serverside logging.

You should probably set the logging tag like this:

(This will log “Debug level” output to your servlet container’s logs.)
The default patterns are probably sufficient to start with, but this sample config file lists all the possible debug patterns. If the debug level does not result in enough info, you may want to try the “All” level.

6. Use a network traffic sniffing tool like Charles: http://xk72.com/charles/ to view traffic between browser and server.


No Comments »

December 13th, 2007 by Kyle
Tags: , , , , , , , , , , , ,
Posted in: Air, Flex, LCDS

Adobe Flex sdk beta 3 and Adobe AIR beta 3 just release to Adobe Labs yesterday, so I have updated my version checker AIR application to detect the new SDK and also compiled the app against the new AIR classes targeting the new AIR runtime.

All other blog references will be pointing to this new version

>>>> here <<<<<.


1 Comment »

November 26th, 2007 by Kyle
Tags: , , , , , , , , , , , , ,
Posted in: Air, Flex, LCDS

I just recently was made aware that there are actually 3 different “builds” of Flex SDK “hotfix 3″ out there.
1. Originally hotfix 3 was applied to hotfix 2 (updating a few swcs) - version 1
2. Late summer 2007 it was realized this confused some folks so the hotfix kb article was replaced with a full version of the SDK with the fixes applied - version 2
3. Flex Builder 3 beta 2 shipped with the latest/greatest SDK from the 2.0.1 branch which is an equivalent to hotfix 3 SDK - version 3.

These versions should be functionally identical afaik.

I updated my version checker to detect and differentiate these versions. I have updated the original blog entry here and also have links to the update AIR app here.


No Comments »

November 12th, 2007 by Kyle
Tags: , , , , , , , , , , , ,
Posted in: Air, Flex, LCDS

Finding out what version of the SDK you are using for Flex Builder, command line compilation, Ant compilation or in your Flex war file for FDS or LCDS can be comfusing. Especially if you have added one of the SDK hotfixes for 2.0.1. When faced with issues from customers, I often ask them what version of the Flex SDK or FDS/LCDS they are using. Sometimes they don’t know or don’t remember if they have installed a hot fix or if they are running FDS or LCDS. To be fair though, finding out what version of the SDK is not clear nor is finding out the version of a FDS/LCDS war. Cracking open some swc files or jar files to find a build number or starting your server to look for a build number in the output or logs and translating the build number to an actual version equivalent really could be made easier. I thought this would make a good AIR application, so I started coding and here is what I came up with. Mind you, it is not feature complete, pretty looking or by any means architecturally elegant. It does the job though…those other things can come later. This is build with Adobe Air Beta2, which can be downloaded here.

Here is a link to the installer.


No Comments »

June 29th, 2007 by Kyle
Tags: , , , , , , , ,
Posted in: Flex, LCDS

I have had a few customers come across the following error when trying to restart the LCDS 2.5 or FDS 2.0 applications without restarting the app server.

[6/28/07 10:54:22:468 EDT] 0000001f ServletWrappe E   Deregister the
mbean because of uncaught init() exception thrown by servlet
MessageBrokerServlet: javax.servlet.UnavailableException: The MBean, ‘flex.runtime.LiveCycle Data Services:type=MessageBroker,id=MessageBroker1′, cannot be registered because the previous MBean with the same name could not be unregistered possibly due to some security setting on the application server. This can be avoided by setting manageable property to false in the configuration file.
at
flex.messaging.MessageBrokerServlet.init(MessageBrokerServlet.java:154)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:
190)
at
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.init(ServletWrapper.jav
a:317)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.initialize(ServletWrapper
.java:1142)
at
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.initialize(ServletWrapp
er.java:150)
at

……

 

Read the rest of this post»


No Comments »