Problem:
When trying to run a MSSQL Stored Procedure in JasperServer, after selecting plsql as the language, the server returns the following error message: No query executer factory registered for the 'plsql' language.
Resolution:
Download jasperreports-extentions-3.5.3.jar. http://www.java2s.com/Code/Jar/j/Downloadjasperreportsextensions353jar.htm
Place this file in your <jasperserver-pro>WEB-INFlib directory.
In <js-install>WEB-INFclassesjasperreports.properties, add the line:
net.sf.jasperreports.query.executer.factory.plsql=com.jaspersoft.jrx.query.PlSqlQueryExecuterFactory
In <js-install>WEB-INFflowsqueryBeans.xml, add plsql as a value in the editQueryAction bean's queryLanguages property list:
<bean id="editQueryAction" class="com.jaspersoft.jasperserver.war.action.EditQueryAction"> <property name="repository"> <ref bean="${bean.repositoryService}"/> </property> <property name="queryLanguages"> <list> <value>sql</value> <!-- Here is the added value to PL/SQL Query Language --> <value>plsql</value> <value>hql</value> </list> </property> <property name="queryLanguagesRequestAttrName" value="queryLanguages" /> <property name="validator" ref="queryValidator" /> </bean>
In <js-install>WEB-INFapplicationContext.xml, add plsql (lower and uppercase) as values in the jdbcDataSourceServiceFactory and the jndiJdbcDataSourceServiceFactory service beans:
<bean class="com.jaspersoft.jasperserver.api.engine.jasperreports.util.DataSourceServiceDefinition"> <property name="serviceBeanName" value="jdbcDataSourceServiceFactory"/> <property name="supportedQueryLanguages"> <set> <value>sql</value> <value>SQL</value> <!-- Add these two value lines for the Oracle PL/SQL Language --> <value>plsql</value> <value>PLSQL</value> </set> </property> </bean> <bean class="com.jaspersoft.jasperserver.api.engine.jasperreports.util.DataSourceServiceDefinition"> <property name="serviceBeanName" value="jndiJdbcDataSourceServiceFactory"/> <property name="supportedQueryLanguages"> <set> <value>sql</value> <value>SQL</value> <!-- Add these two value lines for the Oracle PL/SQL Language --> <value>plsql</value> <value>PLSQL</value> </set> </property> </bean>
Restart the Jasper Services.
Recommended Comments
There are no comments to display.