[
https://jira.jboss.org/jira/browse/JBIDE-4971?page=com.atlassian.jira.plu...
]
Snjezana Peco commented on JBIDE-4971:
--------------------------------------
I have tested this issue using JBoss EAP 5.0 GA and the JBoss Tools current trunk
The problem happens due to the way in which JBoss AS 5 initializes
the application. BIRT uses
org.eclipse.birt.report.listener.ViewerServletContextListener to initialize the BIRT
engine (OSGi) when starting the application. If this listener is
commented/removed, the problem won't happen
...
The problem can be reproduced.
The workaround is the same as described above.
Another problem is that JBoss AS aggressively logs a warning about
missing classes in BIRT internal jars (WEB-INF/platform/plugins/*.jar)
when adding a new *xhtml file to the application.
It is difficult to reproduce this issue. I have succeeded it only once. However, I have
noticed a new issue. When adding a new *xhtml to the web
application, JBoss Tools deploys it correctly to the server, but the server doesn't
recognize it.
Steps to reproduce:
- add JBoss EAP 5.0.0.GA (do not start it)
- start a new Seam Web Project (testbirt, for instance)
- select the JBoss EAP 5.0.0.GA server as Target Server
- add the BIRT Reporting Runtime Component facet
- select the EAR deployment
- finish the wizard
- open testbirt/WebContent/WEB-INF/web.xml
- comment/remove the following lines :
<listener>
<listener-class>org.eclipse.birt.report.listener.ViewerServletContextListener</listener-class>
</listener>
- import the files from testbirtfiles.zip to the WebContent directory of the testbirt
(WAR) project
- deploy the application
- start the JBoss EAP 5.0 GA server
- start the application and verify it works
- click "Touch descriptors" and verify the application is redeployed
- start
http://localhost:8080/testbirt/birttests.seam and click Test Birt (pdf)
- copy birttests.xhtml to birttest2.xhtml
- verify birttest2.xhtml is deployed
- start
http://localhost:8080/testbirt/birttests2.seam
Not always, but in most of the cases, you will get "HTTP Status 404".
In case you haven't succeeded to reproduce the issue, try to copy birttests.xhtml to a
new xhtml file ...
After reproducing the issue, you will face some new issues. The "Touch
descriptors" action doesn't redeploy the application.The new application
won't be recognized by the server. If you create a new Seam project (WAR or EAR, with
or without the BIRT facet), JBoss Tools will deploy the application, but the application
won't be started. "Full Publish" won't help. The only way to solve the
problem is to restart JBoss EAP.
Deploying BIRT application to JBoss AS 5.x
------------------------------------------
Key: JBIDE-4971
URL:
https://jira.jboss.org/jira/browse/JBIDE-4971
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: birt, JBossAS
Affects Versions: 3.1.0.M3
Reporter: Snjezana Peco
Assignee: Snjezana Peco
Attachments: eap5log1.txt, eap5log2.txt, eap5log3.txt, eap5log4.txt,
testbirt-ds.xml
Steps to reproduce:
- download testbirt.zip project from
https://anonsvn.jboss.org/repos/jbosstools/workspace/snjeza/seam-examples...
(56MB)
- configure Seam 2.2.0 and a JBoss Runtime
- deploy to JBoss AS server
- call the "Test Birt" link
JBoss AS 4.2.3
- works correctly
JBoss AS 5.1.0 GA
- doesn't work due to the problem described on
http://www.jboss.org/index.html?module=bb&op=viewtopic&t=156898
JBoss EAP 5.0
You will often get warnings (eap5log1.txt)
When calling the "Test Birt" action, you will get either eap5log2.txt or
eap5log3.txt.
The problem isn't always reproducible. Sometimes it doesn't happen, but rarely.
The problem happens due to the way in which JBoss AS 5 initializes the application. BIRT
uses org.eclipse.birt.report.listener.ViewerServletContextListener to initialize the BIRT
engine (OSGi) when starting the application. If this listener is commented/removed, the
problem won't happen. If the BIRT engine hasn't been already initialized, it will
be initialized when starting a BIRT servlet so that this listener isn't obliged. Maybe
this is even better because the BIRT engine is initialized only when it is called. For
now, we can use this as a workaround. However, it seems that there is a problem when the
JBoss AS server initializes the application.
Another problem is that JBoss AS aggressively logs a warning about missing classes in
BIRT internal jars (WEB-INF/platform/plugins/*.jar) when adding a new *xhtml file to the
application. This can be solved by adding a line to
<JBOSSAS_HOME/server/default/conf/bootstrap/profile.xml:
...
<bean name="WebVisitorAttributes"
class="org.jboss.system.server.profile.basic.IncludeExcludeVisitorAttributes">
<constructor>
<parameter>
<set>
<value>.war</value>
</set>
</parameter>
<parameter>
<set>
<value>WEB-INF/classes</value>
<value>WEB-INF/lib</value>
<value>WEB-INF/platform</value> <!-- BIRT workaround -->
</set>
</parameter>
</constructor>
</bean>
...
The workaround isn't applicable to JBoss AS 5.1.0.GA.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira