`
conkeyn
  • 浏览: 1529103 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

Axis 1.4 上传二进制文件(base64Binary)

阅读更多

服务端代码:

package samples.userguide.example5;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class BinaryServer {

	public void saveImage(String filename, byte[] image) throws IOException {
		String dir = "D:/workspace-java/axis1/web/WEB-INF/classes/samples/userguide/example5/";
		if (image != null && image.length > 0) {
			FileOutputStream output = new FileOutputStream(new File(dir
					+ filename));
			output.write(image);
			output.flush();
			output.close();
		}
	}
}

 配置deploy.wsdl文件,由于byte[]是axis默认支持的,因此不需要额外的配置。

<deployment xmlns="http://xml.apache.org/axis/wsdd/"
            xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
    <service name="BinaryServer" provider="java:RPC">
        <parameter name="className" value="samples.userguide.example5.BinaryServer"/>
        <parameter name="allowedMethods" value="*"/>
    </service>
</deployment>

运行发布描述文件命令:

D:\workspace-java\axis\web\WEB-INF>java -classpath %CLASSPATH% org.apache.axis.client.AdminClient -l http://localhost:8080/axis/services/BinaryServer deploy.wsdd
 

客户端代码:

package samples.userguide.example5;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;

public class BinaryClient {
	
	public static void main(String[] args) throws ServiceException, IOException {
		String url = "http://localhost:8080/axis/services/BinaryServer";
		String dir = BinaryClient.class.getResource(".").getFile().toLowerCase();
		System.out.println(dir);
		// System.exit(0);
		FileInputStream input = new FileInputStream(new File(dir+"Desert.jpg"));
		byte [] image = new byte[input.available()];
		input.read(image);
		org.apache.axis.client.Service service = new org.apache.axis.client.Service();
		org.apache.axis.client.Call call = (Call) service.createCall();
		call.setTargetEndpointAddress(url);
		javax.xml.namespace.QName qn = new javax.xml.namespace.QName("BinaryServer","saveImage");
		call.setOperationName(qn);
		call.addParameter("arg0", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
		call.addParameter("arg1", org.apache.axis.encoding.XMLType.SOAP_BASE64BINARY, javax.xml.rpc.ParameterMode.IN);
		call.setReturnType(org.apache.axis.encoding.XMLType.AXIS_VOID);
		Object[] args1 = new Object[]{"desert1.jpg",image};
		call.invoke(args1);
		input.close();
	}
}

 运行测试,OK。确实上传成功。

 

分享到:
评论

相关推荐

    axis1.4完整包下载

    1. **Axis1.4 JAR文件**:这是核心库,包含了处理SOAP消息、WSDL(Web服务描述语言)解析、服务部署等功能的类和接口。 2. **Axis1.4工具**:这些是命令行工具,如wsdl2java和java2wsdl,用于将Java类转换为WSDL或...

    axis1.4生成客户端

    - **步骤2:启动Axis** - 运行Axis1.4的wsdl2java工具,输入WSDL文件的URL或本地路径,该工具会自动生成Java客户端代码。 - **步骤3:构建客户端代码** - 编译生成的Java源代码,然后在你的项目中引入这些类,这些...

    springboot+axis1.4

    2. **集成 Axis1.4**:首先,你需要在Spring Boot的`pom.xml`文件中添加Axis1.4的依赖。这通常意味着你需要手动添加Axis的库,因为Spring Boot默认并不包含对Axis的支持。你需要找到Axis1.4的Maven坐标,并在`...

    axis1.4帮助文档

    5. **客户端生成**:同样,Axis1.4可以从WSDL文件自动生成Java客户端代码,这使得开发者可以快速创建与Web服务交互的客户端应用程序。 6. **模块和Policy**:Axis1.4支持模块化架构,允许添加额外的功能或扩展。...

    axis1.4jar包以及WSDL和服务端代码互转方法

    当你已经有了服务端代码,例如Java类,你可以使用Axis1.4来生成相应的WSDL文件。首先,确保你的项目已经包含了Axis1.4的库,即axis1.4.jar。在Eclipse中,右键点击项目,选择"属性" -&gt; "Java构建路径" -&gt; "库",...

    axis1.4和axis2相关jar文件

    了解并熟练使用Axis1.4和Axis2的相关jar文件,对于开发和维护Web服务至关重要。这不仅可以帮助开发者快速构建服务,还能确保与现有系统和其他Web服务的互操作性。在实际项目中,应根据具体需求选择适合的版本,同时...

    springboot使用axis1.4的demo

    1. **添加依赖**:首先,我们需要在`pom.xml`文件中添加Axis1.4的依赖。这可以通过在Maven仓库中查找相应的坐标并将其添加到依赖管理部分完成。 2. **创建Web服务**:编写一个Java类,该类将作为Web服务的实现。这...

    axis-bin-1_4.zip_Axis1.4-bin_axis 1.4_axis-1_4.rar_axis-bin-_axi

    "axis-1_4"很可能包含了整个Axis1.4的源代码或二进制文件,包括JAR包、文档、示例和必要的配置文件等。 使用Axis1.4的一般步骤如下: 1. **安装和配置**:解压缩轴的二进制包,将所需的JAR文件添加到项目的类路径...

    axis1.4+activation.jar+mail.jar

    在压缩包文件名称列表中,"axis-bin-1_4.tar.gz"很可能包含了Axis1.4的完整二进制分发包,包括运行和部署Web服务所需的全部文件。而单独的"mail.jar"和"activation.jar"文件,通常需要与Axis1.4一起部署,以提供完整...

    Springboot集成axis1.4的demo

    以下将详细讲解如何在Spring Boot应用中集成Axis1.4以及使用wsdd文件发布Web服务。 首先,了解 Axis1.4:Axis 是一个开源的Java Web服务框架,它允许开发者快速地创建和部署Web服务。Axis1.4是该框架的一个较老版本...

    axis1.4学习示例(详细步骤说明)

    首先,你需要下载 Axis1.4 的二进制包,通常是 `axis-bin-1_4`,从中获取所需的 JAR 包。这些 JAR 包包含了 Axis 框架的核心组件和依赖库。确保将这些 JAR 文件复制到你的 Eclipse Web 项目的 `lib` 目录下,以便于...

    webservice axis1.4服务实例

    4. **部署服务**:使用`wsdl2java`生成的服务骨架类,将服务部署到Axis1.4服务器上,这通常涉及修改服务配置文件(如`services.xml`)。 5. **测试服务**:创建一个客户端测试程序,使用Axis1.4的`java2wsdl`工具...

    AXIS1.4webservice服务端和客户端例子

    2. **使用wsdl2java工具**: AXIS1.4提供了一个名为`wsdl2java`的命令行工具,可以将WSDL(Web Service Description Language)文件转换为Java源代码。WSDL文件描述了Web服务的接口,包括方法名、参数和返回类型。 3...

    apache axis1.4实例

    二、安装与配置Apache Axis1.4 1. 下载Apache Axis1.4的最新版本,解压缩到本地文件夹。 2. 配置环境变量,将Axis1.4的bin目录添加到PATH环境变量中。 3. 验证安装,运行`axis`命令,如果出现Axis的欢迎界面,说明...

    axis1.4开发需要用到的jar包

    在 Axis1.4 开发 Web 服务(Web Service)时,使用正确的库文件至关重要。Axis 是 Apache 组织提供的一款开源工具,它主要用于构建和部署 SOAP(Simple Object Access Protocol)Web 服务。以下是对给定文件中每个 ...

    axis1.4实现全过程,不少任何jar包

    - 下载 Apache Axis 1.4 的二进制版本 `axis-1_4_bin.zip`。 - 解压到 `D:\Tomcat5.5\webapps` 目录下,解压后的目录结构为 `axis-1_4_bin\webapps\axis`。 2. **复制 Axis 文件夹**: - 将解压后的 `axis` ...

    apache axis1.4 官网备份

    二、Apache Axis1.4的安装与配置 1. **下载**:尽管官网不再提供下载,但可以从第三方存储库或历史版本仓库获取Apache Axis1.4的压缩包。 2. **解压**:将下载的压缩包解压到指定目录,例如`C:\axis1.4`。 3. **...

    axis1.4 上传数据示例

    【标题】"axis1.4 上传数据示例"是一个基于Axis1.4框架的Web服务客户端和服务器端实现,用于演示如何通过编程方式上传数据。Axis1.4是Apache组织开发的一个开源SOAP(简单对象访问协议)工具包,它允许开发者创建、...

    axis1.4及webService开发教程

    总的来说,Axis1.4是Web服务开发的一个强大工具,通过本教程提供的文件和说明,开发者可以快速掌握Web服务的开发流程,无论是在服务端发布还是客户端调用,都能得心应手。在深入学习和实践过程中,还会涉及到WS-...

    axis1.4 + document/literal 实例

    在Axis 1.4中,这通常通过WSDL文件完成,WSDL描述了服务的地址、操作、输入和输出消息的格式等信息。 在客户端,开发者需要生成针对服务的代理类,这些类可以像调用本地方法一样调用Web服务。Axis 1.4提供了wsdl2...

Global site tag (gtag.js) - Google Analytics