package com.mypack.soap.client;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.InetSocketAddress;
import java.net.Socket;
public class SoapClietAsSocket
{
static final String ENDPOINT = "http://10.40.51.156:28888/testSoap/services/UserManage?wsdl";
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException
{
Socket stub = new Socket();
stub.connect(new InetSocketAddress("10.40.51.156", 28888), 500);
OutputStream os = stub.getOutputStream();
PrintWriter out = new PrintWriter(os);
String header = "POST /testSoap/services/UserManage HTTP/1.0\n"
+ "Content-Type:text/xml;charset=utf-8\n"
+ "Accept:application/soap+xml, application/dime, multipart/related, text/*\n"
+ "User-Agent:Axis/1.4\n"
+ "Host:10.40.51.156:28888\n"
+ "Cache-Control: no-cache\n"
+ "Pragma: no-cache\n"
+ "SOAPAction: \"\"\n"
+ "Content-Length: ";
String messge = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"><soapenv:Body><ns1:queryUser soapenv:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:ns1=\"http://services.zhang.com\"><in0 xsi:type=\"ns2:UserInfo\" xsi:nil=\"true\" xmlns:ns2=\"http://tdo.zhang.com\"/></ns1:queryUser></soapenv:Body></soapenv:Envelope>";
int length = messge.length();
header += length + "\n\n";
out.println(header + messge);
out.flush();
InputStream is = stub.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
for (String line = br.readLine(); line != null; line = br.readLine())
{
System.out.println(line);
}
is.close();
br.close();
out.close();
}
}
分享到:
相关推荐
Java Socket 发送HTTP请求Web Service是一项...总的来说,Java Socket发送HTTP请求Web Service涉及网络编程和HTTP协议的理解,通过源码实现可以深入学习底层原理,但实际项目中可能更倾向于使用成熟的HTTP客户端库。
### Socket SOAP 中间件知识点详解 #### 一、软件接口的重要性与选择标准 软件接口作为系统之间信息交换的桥梁,在现代软件开发中扮演着至关重要的角色。为了确保系统的高效稳定运行,选择合适的通信机制至关重要...
5. 示例:创建一个简单的Socket服务器,接收并回应客户端的消息,以及创建一个客户端连接服务器并发送消息。 三、SOAP与Socket的结合 1. 在某些情况下,SOAP服务可能会通过Socket进行传输,特别是在防火墙限制HTTP...
总结,PHP HTTP客户端的实现涵盖了多种功能,包括基础的GET和POST请求,高级的SOAP Web服务调用,以及通过SOCKET的低级网络交互。同时,它也支持通过代理服务器进行连接,并能够处理用户代理和Cookie,确保了与目标...
4. **发送SOAP请求**:根据生成的代理代码,构建SOAP消息,调用相应的函数,如`callCalculatorService()`,并将计算操作和参数传递进去。 5. **处理响应**:接收到服务器的响应后,使用gSOAP提供的解析函数,如`soap...
一旦连接建立,客户端可以通过Socket发送数据到服务器。在本例中,数据是以byte数组的形式发送,因为SOAP消息通常被编码成字节流,以便在网络上传输。 发送数据时,我们需要构建SOAP消息的XML结构,包括包头和包体...
文件名`socket_webServer`可能包含的是示例代码或项目文件,它可能展示了如何具体实现上述步骤,包括如何接收和解析HTTP请求,以及如何构造和发送响应。在实际操作中,可以参考这个文件来搭建和测试Socket Web服务。...
对于SOAP请求,PHP提供了SoapClient类用于与Web Services进行通信。通过设置'connection_timeout'选项,我们可以控制SOAP客户端在连接服务器时允许的超时时间。另外,通过ini_set函数,我们可以设置default_socket_...
4. **Webservice客户端**:使用Spring的WebServiceTemplate或Apache CXF库,配置客户端代理,发送SOAP请求并处理响应。 5. **Webservice服务端**:创建Webservice服务,可以使用JAX-WS或JAX-RS,结合Spring MVC实现...
2. **SOAP**:SOAP是传输协议,负责将请求和响应数据封装成XML格式,并通过HTTP发送。它可以处理复杂的数据结构,但相对HTTP而言,传输效率较低。 3. **UDDI**:UDDI提供了一种目录服务,允许服务提供商注册他们的...
- 在Android中可以通过`Ksoap2`等库实现SOAP消息的发送和接收。 #### 六、WebView显示网页 - **WebView:** 用于在Android应用中嵌入网页。 - **Chrome-Lite Webview:** Google提供的一种轻量级的WebView解决...
+ 可以使用任何语言来完成,只要发送正确的 SOAP 请求即可 + 基于 SOAP 的服务可以在任何平台无需修改即可正常使用 + 符合任何路由器、防火墙或代理服务器的要求 三、RPC * 定义:RPC 就是从一台机器(客户端...
客户端通过Socket创建连接请求,而服务器端通过ServerSocket监听客户端的连接。 1. **Socket的使用**: - **创建ServerSocket**:服务器端首先创建ServerSocket对象,指定监听的端口号。例如: ```java ...
在Web服务中,通常会用到Socket来建立连接,然后通过HTTP/HTTPS协议发送JSON格式的数据。例如,一个RESTful API可能会使用HTTP请求方法(如GET、POST、PUT、DELETE等)和JSON作为请求和响应的载体,而WebSocket则是...
在追踪Socket代码的过程中,我们可以看到如何创建Socket,绑定IP和端口,监听连接请求,以及如何发送和接收数据。Socket通信的优点在于它的灵活性和效率,但同时也需要程序员处理更多的网络协议细节。 另一方面,...
函数内部通过fsockopen函数建立与服务器的socket连接,然后构造SOAP请求数据,并通过fputs函数发送请求。 接下来,函数ConstructData用于构建SOAP请求的XML消息。这部分内容是创建SOAP消息的关键,其中包含了一个...
而在网络编程中,Socket是一种底层通信接口,它允许应用程序通过网络发送和接收数据。 本文将详细介绍如何使用C#、WCF和Socket来实现数据推送,并提供一个并发完成端口的例子。首先,让我们理解这些概念: 1. **C#...
SOCKET是网络编程的基础,它是进程间通信的一种方式,允许应用程序通过网络发送和接收数据。在文件传输中,SOCKET提供了低级别的网络访问,允许开发者直接控制数据流,实现高效的数据传输。通过TCP/IP协议,SOCKET...
它基于请求-响应模型,客户端发送请求到服务器,服务器接收到请求后返回响应。HTTP协议是无状态的,这意味着每个请求都是独立的,不保存任何关于先前交互的信息。此外,HTTP使用ASCII编码的文本格式,方便人阅读,但...
HTTPService允许开发者配置请求方法(GET, POST等),设置请求头,处理复杂的数据格式如SOAP XML。与URLLoader相比,HTTPService提供了更多的控制和错误处理能力,适合于复杂的Web服务交互。 三、Socket Socket通信...