0

是否有人成功实施了使用 Microsoft SQL Server 2005 Reporting Services 的基于 Java 的解决方案?Reporting Services 带有一组 Web 服务,允许您控制报表的创建、报表的执行等,而我刚刚开始开发此集成的 POC。我尚未做出的几个选择是,我是想将 Axis2 用于 wsdl-to-java 功能还是使用 WebLogic 的 clientgen (wsdl 2 java) 解决方案。我想我也可以使用 JAX-WS 和 wsimport。在我深入研究之前,我想看看是否有人使用众多可用选项之一成功地做到了这一点。

过去,我遇到了一些关于如何在 .NET 和 Java Web 服务之间处理 null/blank/empty 的问题,我只是想看看这是否是 SSRS 和 Java 集成的问题。谢谢

4

3 回答 3

1

我在 RS 方面的经验将引导我建议您使用其他任何东西。我认为 Web 服务部分可以正常工作,但我会担心 RS 如何管理内存以及在做出任何决定之前需要同时运行多少报告。我今天正在与 RS 的内存管理问题作斗争,即使在顶级硬件上也很难运行大型报告(返回的大量行和广泛的结果集)。

话虽如此,如果您认为 RS 可以处理您的使用情况,那么它可能会很好。开发环境很好,很容易理解和布置报告。它拥有的表格布局范例非常好。

于 2008-09-16T16:52:23.770 回答
1

我只是想回来回答我自己的问题。我从 Axis2 开始,它是 Apache 的 SOAP 实现。在使用 WSDL2Java 生成客户端后,我能够成功调用 Microsoft Reporting Services WebService 并生成报表,输出为 Excel、PDF、CSV 和其他格式。在我的例子中,我还使用 Axis2 或 HttpClient 的 NTML 身份验证机制让我的应用程序使用来自 Active Directory 的凭据自动“登录”,并生成报告并将其分发给许多用户。

于 2008-09-21T22:38:26.227 回答
0

我们已经成功地实现了:JBoss 5 -> IIS 代理 -> MS Reporting Services 2008(通过 webservice)。

有几个缺陷:MS RS 2008 不再支持“匿名”访问(2005 支持),并且强制使用 NTLM 身份验证。这在 Java 世界中仍然是一个挑战,没有好的 NTLM 库可用。

为了克服这个问题,我们实现了简单的代理(IIS7 + ashx),它在 RS 上进行 NTLM 身份验证(用户/密码硬编码)并允许 JBoss 匿名访问(通过简单地重写 http 响应)。

工作正常:)

干杯P

于 2011-04-21T09:52:26.893 回答