`
zwhc
  • 浏览: 264616 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

axis 源码初步研读

阅读更多
经过反复跟踪,这段代码比较重要:

org.apache.axis.Message.java

    public void writeTo(java.io.OutputStream os) throws SOAPException, IOException {
         //Do it the old fashion way.
    	Thread.dumpStack();
        if (getSendType() == Attachments.SEND_TYPE_NONE || mAttachments == null || 0 == mAttachments.getAttachmentCount()) {
            try {
                String charEncoding = XMLUtils.getEncoding(this, msgContext);;
                mSOAPPart.setEncoding(charEncoding);
                mSOAPPart.writeTo(os);
            	System.out.println("(Message.java:540)");
            } catch (java.io.IOException e) {
                log.error(Messages.getMessage("javaIOException00"), e);
            }
        } else {
            try {
                mAttachments.writeContentToStream(os);
                //BufferedOutputStream bos = new BufferedOutputStream();
                ByteArrayOutputStream bos = new ByteArrayOutputStream();
                mAttachments.writeContentToStream(bos);
                //String str = bos.toString();
                System.out.println("(Message.java:553) mAttachments:" + bos.toString());
            	System.out.println("(Message.java:554) " + mAttachments);
            } catch (java.lang.Exception e) {
                log.error(Messages.getMessage("exception00"), e);
            }
        }
    }




另外,贴一些通过 Thread.dumpStack() 打印出来的程序流程:

java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactory(EngineConfigurationFactoryFinder.java:189)
	at org.apache.axis.configuration.EngineConfigurationFactoryFinder.access$2(EngineConfigurationFactoryFinder.java:163)
	at org.apache.axis.configuration.EngineConfigurationFactoryFinder$1.run(EngineConfigurationFactoryFinder.java:128)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactory(EngineConfigurationFactoryFinder.java:113)
	at org.apache.axis.configuration.EngineConfigurationFactoryFinder.newFactory(EngineConfigurationFactoryFinder.java:160)
	at org.apache.axis.client.Service.getEngineConfiguration(Service.java:813)
	at org.apache.axis.client.Service.getAxisClient(Service.java:104)
	at org.apache.axis.client.Service.<init>(Service.java:113)
	at com.mns.SendMessageServiceLocator.<init>(SendMessageServiceLocator.java:12)
	at com.mns.ZTestSendMsg.test_main1(ZTestSendMsg.java:114)
	at com.mns.ZTestSendMsg.main(ZTestSendMsg.java:55)

java.lang.Exception: Stack trace
	at java.lang.Thread.dumpStack(Unknown Source)
	at org.apache.axis.client.Call.invokeEngine(Call.java:2816)
	at org.apache.axis.client.Call.invoke(Call.java:2799)
	at org.apache.axis.client.Call.invoke(Call.java:2444)
	at org.apache.axis.client.Call.invoke(Call.java:2367)
	at org.apache.axis.client.Call.invoke(Call.java:1812)
	at com.mns.SendMessageBindingStub.sendMessage(SendMessageBindingStub.java:442)
	at com.mns.ZTestSendMsg.test_main1(ZTestSendMsg.java:278)
	at com.mns.ZTestSendMsg.main(ZTestSendMsg.java:55)2817:service.getEngine():org.apache.axis.client.AxisClient@5812f9ee

java.lang.Exception: Stack trace
	at java.lang.Thread.dumpStack(Unknown Source)
	at org.apache.axis.attachments.MimeUtils.createMP(MimeUtils.java:248)
	at org.apache.axis.attachments.AttachmentsImpl.getContentType(AttachmentsImpl.java:567)
	at org.apache.axis.Message.getContentType(Message.java:489)
	at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:343)
	at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
	at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
	at org.apache.axis.client.AxisClient.invoke(AxisClient.java:175)
	at org.apache.axis.client.Call.invokeEngine(Call.java:2818)
	at org.apache.axis.client.Call.invoke(Call.java:2799)
	at org.apache.axis.client.Call.invoke(Call.java:2444)
	at org.apache.axis.client.Call.invoke(Call.java:2367)
	at org.apache.axis.client.Call.invoke(Call.java:1812)
	at com.mns.SendMessageBindingStub.sendMessage(SendMessageBindingStub.java:442)
	at com.mns.ZTestSendMsg.test_main1(ZTestSendMsg.java:278)
	at com.mns.ZTestSendMsg.main(ZTestSendMsg.java:55)


java.lang.Exception: Stack trace
	at java.lang.Thread.dumpStack(Unknown Source)
	at org.apache.axis.Message.writeTo(Message.java:536)
	at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:514)
	at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
	at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
	at org.apache.axis.client.AxisClient.invoke(AxisClient.java:175)
	at org.apache.axis.client.Call.invokeEngine(Call.java:2818)
	at org.apache.axis.client.Call.invoke(Call.java:2799)
	at org.apache.axis.client.Call.invoke(Call.java:2444)
	at org.apache.axis.client.Call.invoke(Call.java:2367)
	at org.apache.axis.client.Call.invoke(Call.java:1812)
	at com.mns.SendMessageBindingStub.sendMessage(SendMessageBindingStub.java:442)
	at com.mns.ZTestSendMsg.test_main1(ZTestSendMsg.java:278)
	at com.mns.ZTestSendMsg.main(ZTestSendMsg.java:55)
java.lang.Exception: Stack trace
	at java.lang.Thread.dumpStack(Unknown Source)
	at org.apache.axis.attachments.AttachmentsImpl.writeContentToStream(AttachmentsImpl.java:520)
	at org.apache.axis.Message.writeTo(Message.java:548)
	at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.java:514)
	at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
	at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
	at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
	at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
	at org.apache.axis.client.AxisClient.invoke(AxisClient.java:175)
	at org.apache.axis.client.Call.invokeEngine(Call.java:2818)
	at org.apache.axis.client.Call.invoke(Call.java:2799)
	at org.apache.axis.client.Call.invoke(Call.java:2444)
	at org.apache.axis.client.Call.invoke(Call.java:2367)
	at org.apache.axis.client.Call.invoke(Call.java:1812)
	at com.mns.SendMessageBindingStub.sendMessage(SendMessageBindingStub.java:442)
	at com.mns.ZTestSendMsg.test_main1(ZTestSendMsg.java:278)
	at com.mns.ZTestSendMsg.main(ZTestSendMsg.java:55)
(org.apache.axis.attachments.AttachmentsImpl.java:522) 


分享到:
评论

相关推荐

    axis1.4 源码包

    axis1.4 源码包,亲测,好用,放心下载,不必再进行反编译工作

    axis2 包括源码 文档

    下面我们将深入探讨 Axis2 的源码、文档以及提供的不同版本包。 首先,`axis2-1.6.2-docs.zip` 文件包含了 Axis2 框架的完整文档,包括用户指南、开发者指南、API参考以及各种教程。这些文档对于理解 Axis2 的工作...

    axis1.4源码

    Axis1.4源码分析 Axis是Apache软件基金会的一个开源项目,它是一个基于Java的Web服务框架,专门用于实现SOAP(简单对象访问协议)和WSDL(Web服务描述语言)。Axis1.4是该框架的一个稳定版本,为开发人员提供了构建...

    axis 1.3 完整源码

    axis 完整源码 目录结构 axis 1.3 -----docs -----lib -----samples -----webapps -----xmls -----LICENSE.txt -----README release-notes.html

    axis2源码下载~

    在进行源码分析之前,首先需要从官方网站或者其他可靠的源获取Axis2的源码。下载版本为1.5.4,这个版本可能相对较为古老,但依然包含了大量Web服务实现的核心概念和技术。解压下载的压缩包,通常会包含多个目录和...

    axis-src-1_3.zip_axis_axis-src-1_3_axis1 1.3 src_axis源码

    《 Axis 源码解析与 WebService 发布详解》 Axis 是一款开源的 Java 库,主要用于构建和部署 WebServices。在本文中,我们将深入探讨 Axis 的源码,理解其核心工作原理,并学习如何利用 Axis 来发布 WebServices。...

    axis2-1.6.4源码

    Axis2是Apache软件基金会开发的一个开放源码的Web服务引擎,它是基于SOAP(简单对象访问协议)和WS-*(Web服务增强规范)标准的。这个"axis2-1.6.4源码"包含了 Axis2 的完整源代码,用于帮助开发者深入理解其内部...

    axis发布webservice教程源代码

    【标题】"Axis发布Web服务教程源代码"指的是使用Apache Axis框架来创建并发布Web服务的教学资源,其中可能包含了详细的步骤、示例代码以及相关的配置文件。Apache Axis是开源的Java库,它允许开发者在Java平台上快速...

    axis.jar源码

    《深入理解Axis.jar源码》 Axis.jar是Apache软件基金会开发的一个开源Web服务框架,它在Java平台上提供了SOAP(简单对象访问协议)处理和Web服务的实现。源码的分析对于开发者来说,不仅可以帮助理解其内部工作原理...

    Axis2WebService 源码

    这个源码包可能是为了帮助开发者深入理解Axis2的工作原理,或者用于自定义扩展和调试目的。下面我们将详细探讨Axis2 WebService的一些关键知识点。 1. **Web服务基础**:Web服务是一种通过HTTP协议进行通信的应用...

    Axis2已编译通过并正常工程源码

    **Axis2已编译通过并正常工程源码** Apache Axis2是Java平台上的一款著名的服务导向架构(SOA)实现,它提供了Web服务引擎,用于处理SOAP消息。此源码工程表明Axis2已经被成功编译,并且可以作为一个运行正常的项目...

    axis2-1.5.6源码

    Axis2是Apache软件基金会开发的一个开放源码的Web服务框架,用于构建高度可扩展和灵活的Web服务。这个"axis2-1.5.6源码"提供了 Axis2 框架的源代码,让我们可以深入理解其内部工作原理,这对于开发者来说是一个宝贵...

    axis2 webservice项目源码

    我已经止传了,这是一个示例源码。大家下载后在eclipse中直接导入到工程就可以了,编码用gbk吧,本项目可以部署在纯java工程项目中,可以不用web容器。文档在本人的资源中也有,找一下,名字为axis2_webservice.doc...

    Axis WebService 实例源码

    【标题】"Axis WebService 实例源码"的解析与详解 在IT行业中,Web服务是一种重要的技术,它允许不同的应用程序之间通过网络交换数据。Apache Axis是Java平台上的一个开源工具,专门用于创建和部署Web服务。本实例...

    spring集成axis发布webservice源码

    spring集成axis发布webservice源码 spring集成axis发布webservice源码 spring集成axis发布webservice源码 spring集成axis发布webservice源码

    axis2-1.6.2-src 官方源码包

    《 Axis2 1.6.2官方源码详解与应用》 Axis2是Apache软件基金会开发的一款基于Java的Web服务框架,它为构建高性能、可扩展的Web服务提供了强大支持。本文将深入探讨Axis2 1.6.2版本的官方源码,帮助开发者理解其内部...

    axis1.1源码

    Axis1.1源码分析 Axis是一个开源的Web服务框架,它基于Java语言,由Apache软件基金会开发并维护。在电子商务、企业应用集成(EAI)以及B2B交互等场景中,Axis扮演了关键角色,因为它允许开发者轻松地创建、部署和...

    AXIS2 1.7.3 源码 WAR BIN包

    以下是关于AXIS2 1.7.3 源码 WAR BIN包的一些详细知识点: 1. **AXIS2 框架**: AXIS2 是Apache软件基金会开发的一个Web服务框架,它支持SOAP 1.1和1.2,以及RESTful服务。AXIS2的核心设计目标是提高性能和可扩展...

    axis1.4-1.6总包_源码jar包帮助文档

    在标题"axis1.4-1.6总包_源码jar包帮助文档"中,我们聚焦的是AXIS框架的1.4.1、1.5.6以及1.6.1这三个版本。这些版本的集合提供了全面的支持,包括源代码、JAR包和帮助文档,使得开发者在构建和使用Web服务时能有一站...

    axis web service client 源码

    axis web service client 源码

Global site tag (gtag.js) - Google Analytics