如何创建从iReport Designer 4.5到JasperReports服务器存储库的连接

时间:2012-03-30 18:46:03

标签: jasper-reports ireport jasperserver

我正在尝试使用Window->从iReport Designer 4.5创建jasper服务器连接; JasperReports服务器存储库 - >提示时,添加了jasperserver URL和凭据。它添加到存储库但收到错误消息“错误:;嵌套异常是:org.xml.sax.SAXException:坏信封标记:html”。可以请任何人指导我如何解决此错误。谢谢。

2 个答案:

答案 0 :(得分:1)

看来你的问题是由于一个缺陷,他们已经使用了最新的JasperReports Server版本(4.5)。 JasperReports Server 4.2web.xml中有一个servlet过滤器(UploadMultipartFilter),它使用多部分请求,这会中断Axis(iReports使用的Web服务库)。这会导致错误。

因此,要解决此问题,您可以升级到4.5版本,也可以对<jasperserver[-pro] root>/WEB-INF/web.xml中的配置文件进行以下修改,并注释掉以下几行:

<!--
    <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>
-->

在过滤器和过滤器映射标记之前和之后添加<!---->

然后通过将过滤器添加到映射链

来编辑WEB-INF/applicationContext-security-web.xml
...
/** = httpSessionContextIntegrationFilter, uploadMultipartFilter, ${bean.loggingFilter},
${bean.userPreferencesFilter}, ${bean.authenticationProcessingFilter},
${bean.userPreferencesFilter}, ${bean.basicProcessingFilter},
requestParameterAuthenticationFilter, JIAuthenticationSynchronizer,
anonymousProcessingFilter, exceptionTranslationFilter, filterInvocationInterceptor,
switchUserProcessingFilter, iPadSupportFilter
... 

<bean id="uploadMultipartFilter" class="com.jaspersoft.jasperserver.war.common.UploadMultipartFilter"/>

通过在URI / **的过滤器链的第二个位置添加“uploadMultipartFilter”(通常是bean filterChainProxy中的最后一个),并通过在bean filterChainProxy下面添加id为uploadMultipartFilter的bean来引用该新过滤器。 / p>

答案 1 :(得分:0)

我能够在iReport4.5 / iReport4.5.1与JasperReport Server 4.5之间建立连接。安装JasperServer后,我启动了通过浏览器访问的服务器并复制了URL并添加了JasperReports Server URL部分,对于用户名和密码,我使用超级用户帐户建立连接。它没有抛出任何错误消息。尝试为您的设计师和服务器使用最接近的版本...希望这有帮助......