Site Map
 Contact Us
      AppComposer Error FAQ  
  Fact Sheet
  Technical Support

1. After installation was completed, I changed the AppComposer directory name and now it won't start. Why?

The most likely reason is that the new directory name contains a space and should be removed. Directories with spaces just don't work. Remove the space, quit any "hung" processes and restart AppComposer.

2. I installed AppComposer and it won't start (crashes at startup). What am I doing wrong?

The issue is the same as in item #1. If AppComposer was installed into C:\Program Files\AppComposer, it will not launch properly. You CANNOT have a space in the directory path for AppComposer to work properly.

3. Why isn't my deployed WAR file working?

There are several places where things can go wrong.

First: Something could have gone wrong while the WAR file was being built,and you might not have noticed. Errors during the Deploy as WAR command are only listed in the General console. There's no error dialog or anything. (Yes, we plan to fix this eventually.)

Next: The app server needs to recognize and "load" the WAR file. Some app servers will do this dynamically, while others need to be shut down and re-started. One potential source of problems is if you are re-deploying a WAR file with the same name -- in Tomcat, you need to delete the directory it expands your WAR file into so Tomcat will expand the "fresh" WAR file.

Finally: Lots of things can go wrong. If the server can't seem to find your servlet capsules at all, take a look at the server logs to try to figure out what's wrong.

Note: Capsules need to be at the "root" level of the project in order to be deployed properly.

Also note: You can't have a servlet with the same name as a JSP file in the same directory. A common problem is having a servlet with a JSP template file with names like MyServlet.zac and MyServlet.jsp. The JSP file must have a different name, or should be moved into a sub-directory (ie. templates/MyServlet.jsp)

4. I made a bunch of changes to my component, and I replaced the jar in the AppComposer/beans directory. Why aren't the new methods I added to the component visible?

AppComposer scans the beans directory for new jar files, and will load _new_ jars. However, it can't reload a file once it has scanned it. You need to quit AppComposer, then replace the jar file, and start AppComposer again.

5. I changed my component(s), quit AppComposer, and replaced the jar as described above. Now I can't open the capsules that I was working on. Why won't they open?

If you remove a component entirely from the jar file, capsules that used that bean will not be able to be opened in AppComposer. Also, certain changes to a component such as removing a method or property, or changing the type of a property or parameter, may cause AppComposer to encounter problems trying to open capsules which contain the component and which made reference to the changed items.

The safest thing to do if you know that the component's interface is going to change significantly, and you have capsules which use the component, is to use a new package or class name for the new version of the component. Then you can have both the old jar (possibly with a changed file name) and the new jar loaded at the same time. The capsules will open using the old version of the component. Then you can insert the new version of the component and update all the references to it appropriately.

6. When trying to run a servlet I get the following error in the errors tab in AppComposer and an also an error in my browser: sendDocument (Capsule) : Runtime error (temp.Auto_Class_1.print( executing: print in Action(Activate On: From:parent Receive:Behavior.activated) actor.print(getWriter())parent: ActionGroup(Activate On: From:capsule Receive:ServletRequest.doGet)

What does this mean and what am I doing wrong?

This is one of the most common errors you can make when you insert a ServletGet action group under the Capsule instead of the JSP Template. The ServletGet action group has two actions, one being the sendDocument and the other being the setContent action.The sendDocument action tries to interact with the parent, but since the parent is the capsule it does not know what to do with the statement and therefore gives an error. The servlet get action group needs to have the JSP Template as a parent as indicated below.

Browser error:

Wrong ServletGet:

Correct ServletGet:

 White Papers  
      Software Components
          & Services