Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Dynamic Change Connection Profile
jfreak53
Is there a way at run time of a report to change the connection profile file through code? I have a production place and a testing place and I would like to send a param in the url line to tell it which one it's on and change the connection profile before showing the report. Is this possible? If not what else can you recommend?
Find more posts tagged with
Comments
mwilliams
If you go to the "property binding" tab of your dataSource, you'll have an expression builder to build your connection profile info.
Hope this helps.
jfreak53
Yes I found that, but what I want to do is change it dynamically when the report loads in the browser. Is this possible? Like passing to a param the DB name?
Now I have another idea, you can tell me if it's possible. I have this system that has multiple companies in it, and each company has to use the reports. There are two DB's. The main DB has one table, company list, in this list is the Companies DB connection details, I use this in PHP.
So what I was thinking was this. Send the report the company ID for DB 1. Have two data sources. First data source has the company list db in it, DB1. So the report connects, get's DB connection details for the companies personal DB then changes the connection details on Data source 2 from the returned DB information.
Is this possible and how would I go about doing it? Thanks.
mwilliams
If you're able to pass the db name through a parameter, you should be able to use this in your connection expression when you build your database URL. If you were to pass the entire company list through that stores their db names in a dataSet, you could probably grab the value in the onFetch of that dataSet, store it in a variable, and use that variable in the property binding of the second dataSet. You'd have to make sure you bind a hidden text box at the top of your report to the company list db so that you're certain that it is accessed first, though. Otherwise, it wouldn't work because you wouldn't have access to the company list prior to running your second dataSet.
jfreak53
Ok makes sense, how do I grab X datasets row information from the script though? Same way as I would from FX: row["nameofrow"]
mwilliams
You got it! Let me know if you run into issues.
jfreak53
Ok worked for the first report ha ha, now got a miniature problem here ha ha<br />
<br />
On most of my reports I have cascading param groups that all pull from DB. So those also have to be pulled from the DB2 after DB1 has gotten connection info.<br />
<br />
So here is what I did. I created a second DSet and a second DSource. Of course they have their connection info and queries. Now on the DataSet onFetch I did the variable info thing. Then on the DataSource 1, the original I put this in the BeforeOpen event:<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>if(params["colegio"].value > '') {
this.setExtensionProperty("odaURL", "jdbc:mysql://" + params["dbhost"].value + "/" + params["db"].value);
this.setExtensionProperty("odaUser", params["dbus"].value);
this.setExtensionProperty("odaPassword", params["dbps"].value);
}</pre>
<br />
Since I couldn't get it to work with params in the config screen, kept giving me driver errors.<br />
<br />
So that's that, now then I placed a dynamic text box, bound it to the new DataSet and set it at the top of the report and invisible.<br />
<br />
So like I said, report 1 was working just fine. Then I copied all my stuff to report 2, the one with the params cascading. It works yes, but not the params, the params still grab from the default DataSource information.<br />
<br />
So I tried making a dynamic param combo box, link it to the new DataSet and set it to hidden. Hmm, didn't work. Still no go, so any ideas? ha ha
MichaelG
Hi,<br />
<br />
There is a nice way supported by EclipseBIRT and ACTUATEBIRT. If you generate in your report a connection profile and change your data source to use a report parameter as "Connection Profile Name", you are able to set the the data source in time of execution.<br />
<br />
The connection profiles are stored in a file called ServerProfiles.dat in a plugin directory of your workspace (org.eclipse.datatools.connectivity). By default the file is encrypted, but you can externalize it unencrypted for editing within an editor (click right mouse button on the data source, choose "Externalize to Connection profile..."). <br />
<br />
The uncrypted ServerProfiles.dat looks like this (example for jndi and oracle jdbc connection)<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>
<?xml version="1.0" encoding="UTF-8"?>
<DataTools.ServerProfiles version="1.0">
<profile autoconnect="No" desc="" id="5d017c41-b163-11dd-8808-9d53d559e366" name="rep_myConnection_jndi" providerID="org.eclipse.birt.report.data.oda.jdbc">
<baseproperties>
<property name="odaJndiName" value="java:/myConnectionDS"/>
</baseproperties>
</profile>
<profile autoconnect="No" desc="" id="5d017c41-b163-11dd-8808-9d53d559e35a" name="rep_myDatabase" providerID="org.eclipse.birt.report.data.oda.jdbc">
<baseproperties>
<property name="odaDriverClass" value="oracle.jdbc.OracleDriver"/>
<property name="odaURL" value="jdbc:oracle:thin:
@mServer
:1521:myDB"/>
<property name="odaPassword" value="myuser"/>
<property name="odaUser" value="topsecret"/>
</baseproperties>
</profile>
</DataTools.ServerProfiles>
</pre>
<br />
In both Report Designers it works fine. If you deploy your reports on JBoss you just to install the profile file into the birt.war plug-in. On iServer I didn't found out how to configure the profiles to use it in same way (issue was entered <a class='bbc_url' href='
http://www.birt-exchange.org/org/forum/index.php/topic/21991-deploy-a-connection-profile-serverprofilesdat/'>here</a>).<br
/>
<br />
Best regards, Michael
jfreak53
Yes I found that also, but I cannot find a way to tell BIRT at runtime to change connection profiles, since it's at runtime that I change DB's not at launch. Thanks though.
jfreak53
Any ideas as to what I'm doing wrong here?
mwilliams
What is the driver error you're getting?
jfreak53
Ok well at first I wasn't getting any errors, it was because I couldn't make it change the DataSource info before the param window. Now, I got it to change the DS info before the param window, this is what it gives me in the param window:<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>HTTP ERROR 500
Problem accessing /viewer/parameter. Reason:
Exception in JSP: /webcontent/birt/pages/layout/ParameterFragment.jsp:30
27: <%
28: if ( fragment != null )
29: {
30: fragment.callBack( request, response );
31: }
32: %>
33: </TD>
Stacktrace:
Caused by:
org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/layout/ParameterFragment.jsp:30
27: <%
28: if ( fragment != null )
29: {
30: fragment.callBack( request, response );
31: }
32: %>
33: </TD>
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.RequesterFragment_jsp._jspService(RequesterFragment_jsp.java:210)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.servlet.BirtEngineServlet.__doGet(BirtEngineServlet.java:116)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.doGet(BaseReportEngineServlet.java:185)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.service(BaseReportEngineServlet.java:116)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:924)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/dialog/DialogContainerFragment.jsp:64
61: <%
62: if ( fragment != null )
63: {
64: fragment.callBack( request, response );
65: }
66: %>
67: </div>
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.ParameterFragment_jsp._jspService(ParameterFragment_jsp.java:66)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 66 more
Caused by: org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/dialog/ParameterDialogFragment.jsp:55
52: IFragment subfragment = ( IFragment ) childIterator.next( );
53: if ( subfragment != null )
54: {
55: subfragment.service( request, response );
56: }
57: }
58: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.dialog.DialogContainerFragment_jsp._jspService(DialogContainerFragment_jsp.java:124)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 89 more
Caused by: org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/parameter/ParameterGroupFragment.jsp:74
71: IFragment subfragment = ( IFragment ) childIterator.next( );
72: if ( subfragment != null )
73: {
74: subfragment.service( request, response );
75: }
76: }
77: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.apache.jsp.webcontent.birt.pages.dialog.ParameterDialogFragment_jsp._jspService(ParameterDialogFragment_jsp.java:98)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 112 more
Caused by: java.lang.NullPointerException
at java.util.Hashtable.put(Unknown Source)
at java.util.Hashtable.putAll(Unknown Source)
at org.eclipse.birt.data.engine.executor.DataSource.<init>(DataSource.java:74)
at org.eclipse.birt.data.engine.executor.DataSourceFactory.getDataSource(DataSourceFactory.java:74)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.getDataSource(PreparedOdaDSQuery.java:280)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.createOdiDataSource(PreparedOdaDSQuery.java:266)
at org.eclipse.birt.data.engine.impl.QueryExecutor.openDataSource(QueryExecutor.java:399)
at org.eclipse.birt.data.engine.impl.QueryExecutor.prepareExecution(QueryExecutor.java:316)
at org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(PreparedQuery.java:448)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.produceQueryResults(PreparedDataSourceQuery.java:190)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.execute(PreparedDataSourceQuery.java:178)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery.execute(PreparedOdaDSQuery.java:145)
at org.eclipse.birt.report.data.adapter.impl.DataRequestSessionImpl.execute(DataRequestSessionImpl.java:617)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.executeQuery(GetParameterDefinitionTask.java:607)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getResultSetForParameter(GetParameterDefinitionTask.java:1323)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getChoicesFromParameterQuery(GetParameterDefinitionTask.java:1295)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.doGetSelectionList(GetParameterDefinitionTask.java:460)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionList(GetParameterDefinitionTask.java:412)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionListForCascadingGroup(GetParameterDefinitionTask.java:690)
at org.eclipse.birt.report.service.BirtViewerReportService.getSelectionListForCascadingGroup(BirtViewerReportService.java:777)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.getParameterSelectionListForCascadingGroup(ComboBoxParameterFragment.java:119)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.prepareParameterBean(ComboBoxParameterFragment.java:81)
at org.eclipse.birt.report.presentation.aggregation.parameter.ScalarParameterFragment.doService(ScalarParameterFragment.java:91)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:76)
at org.apache.jsp.webcontent.birt.pages.parameter.ParameterGroupFragment_jsp._jspService(ParameterGroupFragment_jsp.java:130)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 134 more
Caused by:
org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/dialog/DialogContainerFragment.jsp:64
61: <%
62: if ( fragment != null )
63: {
64: fragment.callBack( request, response );
65: }
66: %>
67: </div>
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.ParameterFragment_jsp._jspService(ParameterFragment_jsp.java:66)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.RequesterFragment_jsp._jspService(RequesterFragment_jsp.java:210)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.servlet.BirtEngineServlet.__doGet(BirtEngineServlet.java:116)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.doGet(BaseReportEngineServlet.java:185)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.service(BaseReportEngineServlet.java:116)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:924)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/dialog/ParameterDialogFragment.jsp:55
52: IFragment subfragment = ( IFragment ) childIterator.next( );
53: if ( subfragment != null )
54: {
55: subfragment.service( request, response );
56: }
57: }
58: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.dialog.DialogContainerFragment_jsp._jspService(DialogContainerFragment_jsp.java:124)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 89 more
Caused by: org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/parameter/ParameterGroupFragment.jsp:74
71: IFragment subfragment = ( IFragment ) childIterator.next( );
72: if ( subfragment != null )
73: {
74: subfragment.service( request, response );
75: }
76: }
77: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.apache.jsp.webcontent.birt.pages.dialog.ParameterDialogFragment_jsp._jspService(ParameterDialogFragment_jsp.java:98)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 112 more
Caused by: java.lang.NullPointerException
at java.util.Hashtable.put(Unknown Source)
at java.util.Hashtable.putAll(Unknown Source)
at org.eclipse.birt.data.engine.executor.DataSource.<init>(DataSource.java:74)
at org.eclipse.birt.data.engine.executor.DataSourceFactory.getDataSource(DataSourceFactory.java:74)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.getDataSource(PreparedOdaDSQuery.java:280)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.createOdiDataSource(PreparedOdaDSQuery.java:266)
at org.eclipse.birt.data.engine.impl.QueryExecutor.openDataSource(QueryExecutor.java:399)
at org.eclipse.birt.data.engine.impl.QueryExecutor.prepareExecution(QueryExecutor.java:316)
at org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(PreparedQuery.java:448)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.produceQueryResults(PreparedDataSourceQuery.java:190)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.execute(PreparedDataSourceQuery.java:178)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery.execute(PreparedOdaDSQuery.java:145)
at org.eclipse.birt.report.data.adapter.impl.DataRequestSessionImpl.execute(DataRequestSessionImpl.java:617)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.executeQuery(GetParameterDefinitionTask.java:607)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getResultSetForParameter(GetParameterDefinitionTask.java:1323)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getChoicesFromParameterQuery(GetParameterDefinitionTask.java:1295)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.doGetSelectionList(GetParameterDefinitionTask.java:460)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionList(GetParameterDefinitionTask.java:412)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionListForCascadingGroup(GetParameterDefinitionTask.java:690)
at org.eclipse.birt.report.service.BirtViewerReportService.getSelectionListForCascadingGroup(BirtViewerReportService.java:777)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.getParameterSelectionListForCascadingGroup(ComboBoxParameterFragment.java:119)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.prepareParameterBean(ComboBoxParameterFragment.java:81)
at org.eclipse.birt.report.presentation.aggregation.parameter.ScalarParameterFragment.doService(ScalarParameterFragment.java:91)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:76)
at org.apache.jsp.webcontent.birt.pages.parameter.ParameterGroupFragment_jsp._jspService(ParameterGroupFragment_jsp.java:130)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 134 more
Caused by:
org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/dialog/ParameterDialogFragment.jsp:55
52: IFragment subfragment = ( IFragment ) childIterator.next( );
53: if ( subfragment != null )
54: {
55: subfragment.service( request, response );
56: }
57: }
58: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.dialog.DialogContainerFragment_jsp._jspService(DialogContainerFragment_jsp.java:124)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.ParameterFragment_jsp._jspService(ParameterFragment_jsp.java:66)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.RequesterFragment_jsp._jspService(RequesterFragment_jsp.java:210)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.servlet.BirtEngineServlet.__doGet(BirtEngineServlet.java:116)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.doGet(BaseReportEngineServlet.java:185)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.service(BaseReportEngineServlet.java:116)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:924)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/parameter/ParameterGroupFragment.jsp:74
71: IFragment subfragment = ( IFragment ) childIterator.next( );
72: if ( subfragment != null )
73: {
74: subfragment.service( request, response );
75: }
76: }
77: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.apache.jsp.webcontent.birt.pages.dialog.ParameterDialogFragment_jsp._jspService(ParameterDialogFragment_jsp.java:98)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 112 more
Caused by: java.lang.NullPointerException
at java.util.Hashtable.put(Unknown Source)
at java.util.Hashtable.putAll(Unknown Source)
at org.eclipse.birt.data.engine.executor.DataSource.<init>(DataSource.java:74)
at org.eclipse.birt.data.engine.executor.DataSourceFactory.getDataSource(DataSourceFactory.java:74)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.getDataSource(PreparedOdaDSQuery.java:280)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.createOdiDataSource(PreparedOdaDSQuery.java:266)
at org.eclipse.birt.data.engine.impl.QueryExecutor.openDataSource(QueryExecutor.java:399)
at org.eclipse.birt.data.engine.impl.QueryExecutor.prepareExecution(QueryExecutor.java:316)
at org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(PreparedQuery.java:448)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.produceQueryResults(PreparedDataSourceQuery.java:190)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.execute(PreparedDataSourceQuery.java:178)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery.execute(PreparedOdaDSQuery.java:145)
at org.eclipse.birt.report.data.adapter.impl.DataRequestSessionImpl.execute(DataRequestSessionImpl.java:617)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.executeQuery(GetParameterDefinitionTask.java:607)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getResultSetForParameter(GetParameterDefinitionTask.java:1323)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getChoicesFromParameterQuery(GetParameterDefinitionTask.java:1295)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.doGetSelectionList(GetParameterDefinitionTask.java:460)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionList(GetParameterDefinitionTask.java:412)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionListForCascadingGroup(GetParameterDefinitionTask.java:690)
at org.eclipse.birt.report.service.BirtViewerReportService.getSelectionListForCascadingGroup(BirtViewerReportService.java:777)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.getParameterSelectionListForCascadingGroup(ComboBoxParameterFragment.java:119)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.prepareParameterBean(ComboBoxParameterFragment.java:81)
at org.eclipse.birt.report.presentation.aggregation.parameter.ScalarParameterFragment.doService(ScalarParameterFragment.java:91)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:76)
at org.apache.jsp.webcontent.birt.pages.parameter.ParameterGroupFragment_jsp._jspService(ParameterGroupFragment_jsp.java:130)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 134 more
Caused by:
org.apache.jasper.JasperException: Exception in JSP: /webcontent/birt/pages/parameter/ParameterGroupFragment.jsp:74
71: IFragment subfragment = ( IFragment ) childIterator.next( );
72: if ( subfragment != null )
73: {
74: subfragment.service( request, response );
75: }
76: }
77: }
Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.apache.jsp.webcontent.birt.pages.dialog.ParameterDialogFragment_jsp._jspService(ParameterDialogFragment_jsp.java:98)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.dialog.DialogContainerFragment_jsp._jspService(DialogContainerFragment_jsp.java:124)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.ParameterFragment_jsp._jspService(ParameterFragment_jsp.java:66)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.callBack(AbstractBaseFragment.java:106)
at org.apache.jsp.webcontent.birt.pages.layout.RequesterFragment_jsp._jspService(RequesterFragment_jsp.java:210)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.jsp.jasper.JspServlet.service(JspServlet.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:76)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.servlet.Dispatcher.include(Dispatcher.java:192)
at org.eclipse.equinox.http.servlet.internal.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:37)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:82)
at org.eclipse.birt.report.servlet.BirtEngineServlet.__doGet(BirtEngineServlet.java:116)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.doGet(BaseReportEngineServlet.java:185)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.birt.report.servlet.BaseReportEngineServlet.service(BaseReportEngineServlet.java:116)
at org.eclipse.equinox.http.registry.internal.ServletManager$ServletWrapper.service(ServletManager.java:180)
at org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:126)
at org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:60)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.service(HttpServerManager.java:318)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:924)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: java.lang.NullPointerException
at java.util.Hashtable.put(Unknown Source)
at java.util.Hashtable.putAll(Unknown Source)
at org.eclipse.birt.data.engine.executor.DataSource.<init>(DataSource.java:74)
at org.eclipse.birt.data.engine.executor.DataSourceFactory.getDataSource(DataSourceFactory.java:74)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.getDataSource(PreparedOdaDSQuery.java:280)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.createOdiDataSource(PreparedOdaDSQuery.java:266)
at org.eclipse.birt.data.engine.impl.QueryExecutor.openDataSource(QueryExecutor.java:399)
at org.eclipse.birt.data.engine.impl.QueryExecutor.prepareExecution(QueryExecutor.java:316)
at org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(PreparedQuery.java:448)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.produceQueryResults(PreparedDataSourceQuery.java:190)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.execute(PreparedDataSourceQuery.java:178)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery.execute(PreparedOdaDSQuery.java:145)
at org.eclipse.birt.report.data.adapter.impl.DataRequestSessionImpl.execute(DataRequestSessionImpl.java:617)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.executeQuery(GetParameterDefinitionTask.java:607)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getResultSetForParameter(GetParameterDefinitionTask.java:1323)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getChoicesFromParameterQuery(GetParameterDefinitionTask.java:1295)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.doGetSelectionList(GetParameterDefinitionTask.java:460)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionList(GetParameterDefinitionTask.java:412)
at org.eclipse.birt.report.engine.api.impl.GetParameterDefinitionTask.getSelectionListForCascadingGroup(GetParameterDefinitionTask.java:690)
at org.eclipse.birt.report.service.BirtViewerReportService.getSelectionListForCascadingGroup(BirtViewerReportService.java:777)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.getParameterSelectionListForCascadingGroup(ComboBoxParameterFragment.java:119)
at org.eclipse.birt.report.presentation.aggregation.parameter.ComboBoxParameterFragment.prepareParameterBean(ComboBoxParameterFragment.java:81)
at org.eclipse.birt.report.presentation.aggregation.parameter.ScalarParameterFragment.doService(ScalarParameterFragment.java:91)
at org.eclipse.birt.report.presentation.aggregation.AbstractBaseFragment.service(AbstractBaseFragment.java:76)
at org.apache.jsp.webcontent.birt.pages.parameter.ParameterGroupFragment_jsp._jspService(ParameterGroupFragment_jsp.java:130)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
... 134 more
Caused by:
java.lang.NullPointerException
at java.util.Hashtable.put(Unknown Source)
at java.util.Hashtable.putAll(Unknown Source)
at org.eclipse.birt.data.engine.executor.DataSource.<init>(DataSource.java:74)
at org.eclipse.birt.data.engine.executor.DataSourceFactory.getDataSource(DataSourceFactory.java:74)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.getDataSource(PreparedOdaDSQuery.java:280)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.createOdiDataSource(PreparedOdaDSQuery.java:266)
at org.eclipse.birt.data.engine.impl.QueryExecutor.openDataSource(QueryExecutor.java:399)
at org.eclipse.birt.data.engine.impl.QueryExecutor.prepareExecution(QueryExecutor.java:316)
at org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(PreparedQuery.java:448)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.produceQueryResults(PreparedDataSourceQuery.java:190)
at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.execute(PreparedDataSourceQuery.java:178)
at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery.execute(PreparedOdaDSQuery.java:145)
at
mwilliams
It looks like the parameter page is encountering a null value for something it's expecting to have a value giving you a null pointer exception.
jfreak53
Hmmm, is there a way in BIRT to trace something and find out what is null? I'm thinking it's the parameters that change the connection info, for some reason I think it's not getting the connection info and assigning the params from DB1 before the param page, hence nothing to assign but blank info from the params.
Any ideas?
I'm used to PHP where if I want to find out if something is null or what it's doing I just ECHO it ha ha ha This is pulling my hair out ha ha
mwilliams
So, changing the dataSource how you're doing it works, except when you use a cascading parameter? Is this correct?
jfreak53
Yes, except when I try to change it BEFORE the param window. If I don't need it changed for the param window and only need it changed for the report it works. But if I have to change it before the param window because of parameters that use the second DB then it doesn't work. So yes.
jfreak53
Ok here is what I have found out from a lot of testing back and forth. I made all 4 params a dynamic drop down list box that pulls each columns from DataSet 1, the one with the DB connection info. I made each one required so it would automatically pull the text needed into it's value field.
So, then I ran it without changing the connection details, I wanted to make sure that it was displaying the DB connection info first. So the param window came up, and yes all connection info was there in each field displayed. So that's good, we know the DB info is getting to the param fields.
So then I proceeded to uncomment where it changes the connection info from each params value. Boom, error again ha ha
So what that tells me is that DataSet 1, with DB info is not pulled before DataSet2 that grabs all info from final DB. They are both opened at the same time, or have no effect on each other in the param window. Any way that you know of to change this???
The only other way I can think of is sending the DB connection info inside the URL params. Like &db=host&user=us&pass=ps
But that is so unsecure I don't want to have to do that
Any other ideas?
jfreak53
Ok well I finally found a solution. It's not the one I wanted because it's not truly dynamic but it will work for now. Advice BIRT developers, give it the ability to be truly dynamic and grab DB connection info from a DB. It would be really nice if it worked right out of the box like that. But alas here is what I did.<br />
<br />
I made a parameter called colegio. I made it hidden. I pass a number to the report on the url line, 1,2,etc.<br />
<br />
Then there is only one DataSource. This DS is setup for a connection profile by default. When the report launches I have in the beforeOpen of the only DS this to change the connection profile on call:<br />
<br />
<pre class='_prettyXprint _lang-auto _linenums:0'>this.setExtensionProperty("OdaConnProfileStorePath", "/home/user/reports/school" + params['colegio'].value + ".xml")</pre>
<br />
Then I just name the xml files according to the unique ID of the school in the DB and just pass that info to the report and it changes the connection profile. Not a bid deal until I need to move from one DB to another, and if there are a lot of schools then that's a long time. Or move from directory, but a mass grep or SED in linux will take care of the directory change
<br />
<br />
But this will work. Unless someone has another idea please share ha ha.<br />
<br />
Thanks for the help once again Michael, I promise I'll stop bugging soon
mwilliams
No need to stop "bugging". Asking and answering questions are both helpful the others in the community, so keep 'em coming!
mwilliams
One thing if you're worried about passing a parameter through the URL would be to encrypt it in some way before you pass it through, then decrypt it within your BIRT report and use it as needed.
jfreak53
I was thinking about that since BIRT seemed to use base64 for stored passwords inside the rptdesign file. But I couldn't find a native base64 decode for BIRT once inside and would have to include a JAVA in each report. It just seemed easier this way. And I don't think I like passing the DB password over the URL anyways, I mean base64 really isn't that great ha ha
What I could do is configure my tomcat to work with our certificate for https connection. But maybe in the future versions of this thing ha ha
Thanks again for the help.
mwilliams
Also, if you were using code to call your reports rather than URL's with the viewer, you could pass things hidden through the BIRT context as a property. Calling the report with a URL doesn't really allow for this.
bcmp
<p>Much appreciated if someone share the ways to look around for the constants used as key in the birt report scripting like <strong><span style="color:rgb(0,136,0);">OdaConnProfileStorePath </span></strong>as well other constants</p>
<p> </p>
<p><span style="color:rgb(0,0,136);">this</span><span style="color:rgb(102,102,0);">.</span><span>setExtensionProperty</span><span style="color:rgb(102,102,0);">(</span><span style="color:rgb(0,136,0);">"<strong>OdaConnProfileStorePath</strong>"</span><span style="color:rgb(102,102,0);">,</span><span> </span><span style="color:rgb(0,136,0);">"/home/user/reports/school"</span><span> </span><span style="color:rgb(102,102,0);">+</span><span> </span><span style="color:rgb(0,0,136);">params</span><span style="color:rgb(102,102,0);">[</span><span style="color:rgb(0,136,0);">'colegio'</span><span style="color:rgb(102,102,0);">].</span><span>value </span><span style="color:rgb(102,102,0);">+</span><span> </span><span style="color:rgb(0,136,0);">".xml"</span><span style="color:rgb(102,102,0);">)</span></p>