Jump to content
  • No query executer factory registered for the 'plsql' language in JasperServer 5.1


    robertmkc
    • Version: v5.1 Product: JasperReports® Server

    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.


    User Feedback

    Recommended Comments

    There are no comments to display.



    Guest
    This is now closed for further comments

×
×
  • Create New...