Google Chrome、BIRT 和 WebSphere 的神秘问题

发布于 2024-12-05 15:21:26 字数 2742 浏览 2 评论 0原文

我有一个 Web 应用程序,部署在 Tomcat 6、Jetty 7 和 WebSphere 7 上。它使用 BIRT 报告。我使用以下浏览器进行测试:Firefox 6、Google Chrome 14、IE 9。

所有这些组合都可以工作,但只有一种:Chrome 与 WebSphere。

当我尝试使用这对查看报告时,我在 org.apache.axis.SOAPPart 第 696 行

    DeserializationContext dser = new DeserializationContext(is,
                                       getMessage().getMessageContext(),
                                       getMessage().getMessageType());
    dser.getEnvelope().setOwnerDocument(this);
    // This may throw a SAXException
    try {
        dser.parse();  // <-- ERROR
    } catch (SAXException e) {
        Exception real = e.getException();
        if (real == null)
            real = e;
        throw AxisFault.makeFault(real);
    }

输入是一个 InputStream 但它是一个 WebSphere 实现,我不知道如何获取数据。我可以看到浏览器发送到服务器的内容,但这对我来说看起来很好(缩进以便于阅读):

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <Body xmlns="http://schemas.xmlsoap.org/soap/envelope/">
        <GetUpdatedObjects xmlns="http://schemas.eclipse.org/birt">
            <Operation>
                <Target>
                    <Id>Document</Id>
                    <Type>Document</Type>
                </Target>
                <Operator>GetPage</Operator>
                <Oprand>
                    <Name>Stichtag</Name>
                    <Value></Value>
                </Oprand>
                <Oprand>
                    <Name>__isdisplay__Stichtag</Name>
                    <Value></Value>
                </Oprand>
                <Oprand>
                    <Name>__page</Name>
                    <Value>1</Value>
                </Oprand>
                <Oprand>
                    <Name>__svg</Name>
                    <Value>false</Value>
                </Oprand>
                <Oprand>
                    <Name>__page</Name>
                    <Value>1</Value>
                </Oprand>
                <Oprand>
                    <Name>__taskid</Name>
                    <Value>2011-8-21-12-36-37-692</Value>
                </Oprand>
            </Operation>
        </GetUpdatedObjects>
    </Body>
</soap:Envelope>

我尝试对此进行调试,但运行时 sax 解析器没有调试信息。

我可以尝试什么想法吗?

I have a web app which I deploy on Tomcat 6, Jetty 7 and WebSphere 7. It uses BIRT reporting. I use the following browsers for testing: Firefox 6, Google Chrome 14, IE 9.

All of these combinations work but one: Chrome with WebSphere.

When I try to view a report using this pair, I get a SAXException: unexpected end of file in org.apache.axis.SOAPPart line 696:

    DeserializationContext dser = new DeserializationContext(is,
                                       getMessage().getMessageContext(),
                                       getMessage().getMessageType());
    dser.getEnvelope().setOwnerDocument(this);
    // This may throw a SAXException
    try {
        dser.parse();  // <-- ERROR
    } catch (SAXException e) {
        Exception real = e.getException();
        if (real == null)
            real = e;
        throw AxisFault.makeFault(real);
    }

The input is an InputStream but it's an WebSphere implementation and I have no idea how I could get at the data. I can see what the browser sends to the server but that looks fine to me (indented for easier reading):

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <Body xmlns="http://schemas.xmlsoap.org/soap/envelope/">
        <GetUpdatedObjects xmlns="http://schemas.eclipse.org/birt">
            <Operation>
                <Target>
                    <Id>Document</Id>
                    <Type>Document</Type>
                </Target>
                <Operator>GetPage</Operator>
                <Oprand>
                    <Name>Stichtag</Name>
                    <Value></Value>
                </Oprand>
                <Oprand>
                    <Name>__isdisplay__Stichtag</Name>
                    <Value></Value>
                </Oprand>
                <Oprand>
                    <Name>__page</Name>
                    <Value>1</Value>
                </Oprand>
                <Oprand>
                    <Name>__svg</Name>
                    <Value>false</Value>
                </Oprand>
                <Oprand>
                    <Name>__page</Name>
                    <Value>1</Value>
                </Oprand>
                <Oprand>
                    <Name>__taskid</Name>
                    <Value>2011-8-21-12-36-37-692</Value>
                </Oprand>
            </Operation>
        </GetUpdatedObjects>
    </Body>
</soap:Envelope>

I tried to debug this but the runtime sax parser has no debug information.

Any ideas what I could try?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文