0 Replies Latest reply on Apr 10, 2005 1:26 AM by Alex Molochnikov

    XDoclet dies on stack overflow (Eclipse plugin)

    Alex Molochnikov Newbie

      I have an EJB project that depends on a number of other projects containing variuous classes. Experimentally I found, that when these other projects have mutual dependencies, such that project B must be placed into project A's build path, and project A must be listed in the build path of B, any attempt to create the XDoclet configuration for the EJB project, or to run XDoclet, results in the java.lang.StackOverflowError (see the error log below):

      !ENTRY org.eclipse.ui 4 4 Apr 09, 2005 18:31:34.185
      !MESSAGE Unhandled event loop exception

      !ENTRY org.eclipse.ui 4 0 Apr 09, 2005 18:31:34.185
      !MESSAGE java.lang.StackOverflowError
      !STACK 0
      at java.util.HashMap.hash(HashMap.java:257)
      at java.util.HashMap.get(HashMap.java:313)
      at org.eclipse.jdt.internal.core.JavaModelManager.getPerProjectInfo(JavaModelManager.java:910)
      at org.eclipse.jdt.internal.core.JavaModelManager.getPerProjectInfoCheckExistence(JavaModelManager.java:925)
      at org.eclipse.jdt.internal.core.JavaProject.getPerProjectInfo(JavaProject.java:1651)
      at org.eclipse.jdt.internal.core.JavaProject.getRawClasspath(JavaProject.java:1696)
      at org.eclipse.jdt.internal.core.JavaProject.getRawClasspath(JavaProject.java:1682)
      at org.jboss.ide.eclipse.xdoclet.run.util.ProjectUtil.populateClassPath(ProjectUtil.java:50)
      at org.jboss.ide.eclipse.xdoclet.run.util.ProjectUtil.populateClassPath(ProjectUtil.java:95)
      at org.jboss.ide.eclipse.xdoclet.run.util.ProjectUtil.populateClassPath(ProjectUtil.java:95)
      .... repeated many times ....

      If the projects A and B are removed from the EJB's buld path, XDoclet works as expected (but I really need both for compile). Does anyone have an idea of how to resolve this?

      Ideally, I would like to instruct XDoclet to look at only one Session bean file, where XDoclet tags are, and ignore everything else, to avoid the circular action, and even tried the fileset option to exclude all files except the Session bean, but it did not work.

      Eclipse version is 3.0.2, XDoclet 1.2.1, Windows XP Pro.

      Any suggestions will be highly appreciated.