- This topic has 7 replies, 3 voices, and was last updated 15 years, 11 months ago by USDC-VT.
-
AuthorPosts
-
USDC-VTMemberHow do I import a 6.5 project with report capabilities (birt 2.2) to a 7.0 project with report capabilities (birt 2.3)??
I import the project fine – no errors – but when I deploy to a war file and run on my tomcat server, I get ViewerServletContextListener errors::
– Exception sending context initialized event to listener instance of class org.eclipse.birt.report.listener.ViewerServletContextListener
java.lang.NoSuchMethodError: org.eclipse.birt.report.engine.api.EmitterInfo.<init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/eclipse/birt/core/framework/IConfigurationElement;)V
at org.eclipse.birt.report.engine.extension.internal.ExtensionManager.loadEmitterExtensionDefns(ExtensionManager.java:414)
at org.eclipse.birt.report.engine.extension.internal.ExtensionManager.<init>(ExtensionManager.java:103)
at org.eclipse.birt.report.engine.extension.internal.ExtensionManager.createInstance(ExtensionManager.java:112)
at org.eclipse.birt.report.engine.extension.internal.ExtensionManager.getInstance(ExtensionManager.java:121)
at org.eclipse.birt.report.engine.api.impl.ReportEngineHelper.<init>(ReportEngineHelper.java:77)
at org.eclipse.birt.report.engine.api.impl.ReportEngine.<init>(ReportEngine.java:93)
at org.eclipse.birt.report.engine.api.impl.ReportEngineFactory.createReportEngine(ReportEngineFactory.java:13)
at org.eclipse.birt.report.service.ReportEngineService.setEngineContext(ReportEngineService.java:338)
at org.eclipse.birt.report.service.BirtViewerReportService.setContext(BirtViewerReportService.java:975)
at org.eclipse.birt.report.listener.ViewerServletContextListener.contextInitialized(ViewerServletContextListener.java:62)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3669)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1175)
at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:510)
at org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java:104)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:392)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)I did remove the birt 2.2 libs from the project and added birt 2.3 libs (MyEclipse 7.0 / Birt 2.3.1)
Thanks
Loyal WaterMemberCan you create a new Report Project in MyEclipse 7.0 and then transfer your files from the old project to the new project. Does that work?
USDC-VTMemberNot so easy..
I did create a new project and transfered files to it. Were it only that simple. In addition to
transferring files from the old project to the new one, I also needed to go through resolving
dependencies and importing datasets and connections.That done, it did clear up the NoSuchMethod error (goodness to be sure).
However, now when I deploy this (jsf) project to the server, the birt:viewer tag does not render.
Not only that, it seems to disable the command button immediately following the birt tag.<h:form>
<birt:viewer id=”birtViewer”
reportDesign=”reports/pending_case.rptdesign” height=”800″
width=”1000″ left=”5″ pattern=”frameset” format=”HTML”
isHostPage=”false”>
</birt:viewer><f:verbatim><p></f:verbatim>
<h:commandButton id=”pndgCaseRptOKBtn”
action=”#{OpRptBean.pendingCaseokfunct}” rendered=”true” value=”OK” />
</h:form>Page renders, command button renders but will not respond. Works in 6.5/birt 2.2…
Loyal WaterMemberI just checked with the dev team and it seems like you will have to upgrade the reports project. This is how it can be done:-
http://www.myeclipseide.com/documentation/overview/technical/myeclipse_reports_upgrade.html
USDC-VTMemberHelpful link. Followed instructions there, but still no love.
Source page when rendered contains js for the viewer but is never rendered…
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN”>
<HTML>
<HEAD>
<TITLE>Report System</TITLE>
<LINK REL=”STYLESHEET” HREF=”./css/styles.css” TYPE=”text/css”></HEAD>
<BODY>
<CENTER>
<table id=”menu_grid” class=”menu”><tbody><tr><td><a id=”_idJsp0″ name=”_idJsp0″ href=”http://server:8080/VTDWebPortal” class=”white”>VTD Web Apps</a></td><td><a id=”_idJsp2″ name=”_idJsp2″ href=”http://server:8080/VTDWebPortal/OpApps.faces” class=”white”>VTD Operations Apps</a></td><td><a id=”_idJsp4″ name=”_idJsp4″ href=”http://server:8080/VTDWebPortal/AdminApps.faces” class=”white”>Administration Applications</a></td><td><a id=”_idJsp6″ name=”_idJsp6″ href=”http://otherserver” class=”white”>VTD Web Home</a></td></tr>
</tbody></table>
<br/>
<table border=”5″ style=”height: 74px; width: 423px” class=”title”><tbody><tr><td><img src=”/VTD_Op_Reports/images/vtd-seal.gif” style=”height: 61px; width: 53px” /><label id=”titleLabel” class=”title”>VTD Pending Case Report</label><table align=”left” width=”100%”>
<tr align=”left” valign=”middle”>
<TD align=”left” valign=”middle” ></TD>
<TD align=”left” valign=”middle”></TD>
</tr>
</table>
</td></tr></tbody></table>
<br/>
<form id=”_idJsp11″ name=”_idJsp11″ method=”post” action=”/VTD_Op_Reports/PendingCaseReport.faces” enctype=”application/x-www-form-urlencoded”><div id=”params_birtViewer” style=’display:none’>
</div>
<form id=”form_birtViewer” method=”post”></form>
<script type=”text/javascript”>
function loadViewerbirtViewer(){
var formObj = document.getElementById( “form_birtViewer” );
var paramContainer = document.getElementById(“params_birtViewer”);
var oParams = paramContainer.getElementsByTagName(‘input’);
if( oParams )
{
for( var i=0;i<oParams.length;i++ )
{
var param = document.createElement( “INPUT” );
param.type = “HIDDEN”;
param.name= oParams[i].name;
param.value= oParams[i].value;
formObj.appendChild( param );
}
}
formObj.action = “/VTD_Op_Reports/frameset?__id=birtViewer&__report=reports%2Fnew_report.rptdesign&__masterpage=true&__format=HTML”;
formObj.target = “birtViewer”;
formObj.submit( );
}
</script>
<iframe name=”birtViewer” frameborder=”no” scrolling = “auto” style=’height:800px;width:1000px;left:5px;’ ></iframe>
<script type=”text/javascript”>loadViewerbirtViewer();</script><p>
<input id=”_idJsp11:pndgCaseRptOKBtn” name=”_idJsp11:pndgCaseRptOKBtn” type=”submit” value=”OK” onclick=”if(typeof window.clearFormHiddenParams__idJsp11!=’undefined’){clearFormHiddenParams__idJsp11(‘_idJsp11′);}if(typeof window.getScrolling!=’undefined’){oamSetHiddenInput(‘_idJsp11′,’autoScroll’,getScrolling());}” />
<input type=”hidden” name=”autoScroll” /><input type=”hidden” name=”_idJsp11_SUBMIT” value=”1″ /><input type=”hidden” name=”_idJsp11:_idcl” /><input type=”hidden” name=”_idJsp11:_link_hidden_” /><script type=”text/javascript”><!–
function clear__5FidJsp11()
{
clearFormHiddenParams__idJsp11(‘_idJsp11’);
}function clearFormHiddenParams__idJsp11(currFormName)
{
var f = document.forms[‘_idJsp11’];
f.elements[‘_idJsp11:_idcl’].value=”;
f.elements[‘_idJsp11:_link_hidden_’].value=”;
f.target=”;
}clearFormHiddenParams__idJsp11();
//–></script><input type=”hidden” name=”javax.faces.ViewState” id=”javax.faces.ViewState” value=”rO0ABXVyABNbTGphdmEubGFuZy5PYmplY3Q7kM5YnxBzK (truncated)=” /></form>
</CENTER>
<div align=”left” class=”light”>
<small>2008 Company Name</small></div>
<!– MYFACES JAVASCRIPT –><script type=”text/javascript”><!–
function getScrolling() {
var x = 0; var y = 0;
if (self.pageXOffset || self.pageYOffset) {
x = self.pageXOffset;
y = self.pageYOffset;
} else if ((document.documentElement && document.documentElement.scrollLeft)||(document.documentElement && document.documentElement.scrollTop)) {
x = document.documentElement.scrollLeft;
y = document.documentElement.scrollTop;
} else if (document.body) {
x = document.body.scrollLeft;
y = document.body.scrollTop;
}
return x + “,” + y;
}//–></script>
</BODY>
</HTML>I did try to install the MERSimpleReportExample and use the referenced instructions to
upgrade that to 7.0/Birt 2.3.1 as well, but it chokes on the EngineConfig.getLogFile()
method — (i.e. no such).
USDC-VTMemberSpoke too soon it seems.
Was able to use the example to explore a little further into this.
Now appears that the birt:viewer tag renders when not embedded in a <h:form> element but will not render when it is enclosed in a form.
Wish I knew what was causing this to occur now or what to do about it.
Progress, I guess…
Brian FernandesModeratorHoward,
I’m sorry you ran into this. I wanted to confirm that you do have your report project up and running, but you are experiencing a change in BIRT behavior; this we will take up with the BIRT team and report back.
Do let us know if you’re still running into other issues.
USDC-VTMemberIt has been an adventure for sure…
I am now up and running – thanks for the suggestions.
To sum up, the issues I ran into had to do with the upgrade from Birt 2.2 to Birt 2.3 and the FireFox 3 upgrade as well.
Projects that worked under Birt 2.2 and FireFox 2 were broken with the newer verisions.
What I ended up doing was to move the birt:viewer tag out of the form element it was in on my jsp pages for my jsf project.
That allowed the reports to render under FireFox 2, 3 and Internet Explorer (had not rendered in IE even when FF2 was working).
I suspect the xml processing has changed and is interpreted differently in each browser version.The other thing I needed to resolve was that Birt could not find my mysql driver jar for a time.
That turned out to be an issue with deploying the driver jar to my web project under
WebRoot->WEB-INF->report-engine->platform->plugins->org.eclipse.birt.oda.jdbc_2.3.1.v20080827->driversPersonally, I would think that the process of importing a project from 6.5 (or some other version) to 7.0 would have upgraded the
app accordingly, at least so far as birt libraries and dependencies were concerned.That said, I certainly learned more from hacking through all this — good thing productivity was not a high priority on this particular project, though.
-
AuthorPosts