Jump to content
We've recently updated our Privacy Statement, available here ×
  • Bad envelope tag error when updating document in Repository via iReport


    stasp
    • Version: v4.5, v4.2 Product: iReport Designer

    Issue:

    Sometimes when modifying JS Repository resource (e.g. report jrxml), and trying to replace existing resource with the updated one, you may run into following exception:

    When we do that we are getting a

    org.xml.sax.SAXException: Bad Envelope tag: html error.
    

    Cause:

    The issue is most likely due to a defect that we have fxed in our latest JasperReports Server (4.5). JasperReports Server 4.2 has a servlet filter (UploadMultipartFilter) in web.xml that consumes multipart requests, which disrupts Axis (the web service library that is used by iReports). This causes the error.


    Resolution:

    To fix this you can either upgrade to our v4.5.1 release or do the following modifications to your configuration files: Located in <jasperserver[-pro]>/WEB-INF/web.xml and comment out the following lines:

    <!--
    <filter>
        <filter-name>multiPartHelperFilter</filter-name>
        <filter-class>
            com.jaspersoft.jasperserver.war.common.UploadMultipartFilter
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>multiPartHelperFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    -->
    

    (so adding the "{C}{C}{C}{C}{C}{C}{C}{C}{C}{C}{C}{C}{C}" before and after the Filter and filter-mapping tags)

    And then edit WEB-INF/applicationContext-security-web.xml by adding the filter to the chain that maps:

    ... /**=httpSessionContextIntegrationFilter
            ,uploadMultipartFilter
            ,${bean.loggingFilter}
            ,${bean.userPreferencesFilter}
            ,${bean.authenticationProcessingFilter}
            ,${bean.userPreferencesFilter}
            ,${bean.basicProcessingFilter}
            ,requestParameterAuthenticationFilter
            ,JIAuthenticationSynchronizer
            ,anonymousProcessingFilter
            ,exceptionTranslationFilter
            ,filterInvocationInterceptor
            ,switchUserProcessingFilter
            ,iPadSupportFilter ...
    
    <bean class="com.jaspersoft.jasperserver.war.common.UploadMultipartFilter" id="uploadMultipartFilter" />
    

    (so you just need to add "uploadMultipartFilter" at the second position of the filter chains for URI /** (normally the last one in the bean filterChainProxy) and to reference that new filter by adding the bean with id uploadMultipartFilter below the bean filterChainProxy.


    Ref. Case #00022783 -- 12:21, 6 March 2012 (UTC)


    User Feedback

    Recommended Comments

    There are no comments to display.



    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

×
×
  • Create New...