好的,我正在开发一个程序,该程序将部署到许多机器(Windows,Linux,AIX,z / Linux,openVMS等)上。我希望该应用程序包含SOAP
Web服务,但是我不想捆绑tomcat或为这些服务运行单独的服务(我希望它们与应用程序的其余部分在同一过程中)。
基本上,我正在寻找可以定义类的东西(例如WebServices
)。我也可以编写WSDL或任何其他类型的服务描述。我想要这样的东西:
SOAPServer server = makeMeASoapServer();
//do config on the server
server.add(new WebService(...));
server.listen(port);
显然,名称和参数将有所不同。
我一直在看Axis,它似乎提供了此功能,但是我不知道我需要使用哪些类。我为这种行为而疯狂吗?我不敢相信会有更多的人在寻找这个,我一直使用.NET客户端中的嵌入式Web服务来做到这一点。
似乎jdk 6.0已经带有jax-ws实现,并且可以嵌入一个小的服务器。我还没有弄清楚所有的东西,但是这是一个开始:
mkdir -p helloservice/endpoint/
helloservice / endpoint / Hello.java:
package helloservice.endpoint;
import javax.jws.WebService;
@WebService()
public class Hello {
private String message = new String("Hello, ");
public void Hello() {}
public String sayHello(String name) {
return message + name + ".";
}
}
helloservice / endpoint / Server.java:
package helloservice.endpoint;
import javax.xml.ws.Endpoint;
public class Server {
protected Server() throws Exception {
System.out.println("Starting Server");
Object implementor = new Hello();
String address = "http://localhost:9000/SoapContext/SoapPort";
Endpoint.publish(address, implementor);
}
public static void main(String args[]) throws Exception {
new Server();
System.out.println("Server ready...");
Thread.sleep(5 * 60 * 1000);
System.out.println("Server exiting");
System.exit(0);
}
}
建立东西:
mkdir build
javac -d build helloservice/endpoint/*java
$JAVA_HOME/wsgen -d build -s build -classpath . helloservice.endpoint.Hello
运行东西:
java -cp build helloservice.endpoint.Server
现在,某些东西正在http:// localhost:9000 / SoapContext /
SoapPort上运行
。您可以在http://
localhost:9000 / SoapContext /
SoapPort?WSDL
上获得wsdl。
还没有找到客户的机会。
问题内容: 我有一个作为常规SOAP Web服务公开的接口。该接口的一种方法包括让客户端将文件发送到服务器,然后服务器处理该文件并返回结果文件。处理文件可能需要一些时间,因此我认为使用异步调用此方法是一个更好的主意。我考虑了以下流程: 客户端调用异步方法,并使用附件(MTOM)发送文件。服务器接收到文件后,会将响应发送回客户端,表明已接收到该文件,并将在不久后对其进行处理。处理完文件后,会将响应发
问题内容: 我是Java新手,我知道Web服务有两种类型 SOAP Web服务。 RESTful Web服务。 谁能告诉我两者的基本区别是什么?在什么情况下创建?在什么情况下创建? 谢谢, 问题答案: 正如第一个答案已经解释的那样,SOAP Webservices和REST Webservices在各个方面有所不同。 肥皂: 您可以在.wsdl文件中定义您的界面,该文件准确描述了预期的输入参数以及
我是Apache Camel的新手,我使用Red Hat Code准备工作室12.16.0.GA.我想调用肥皂网络服务。我用过这个例子https://tomd.xyz/camel-consume-soap-service/ 这是我的camel上下文文件 这是我的输入bean 围绕它有许多问题。首先,我不能将输入参数传入主体。我试着像这样设置身体 但没有得到响应或只是没有记录。我已经尝试使用bean
第 12 章 SOAP Web 服务 12.1. 概览 12.2. 安装 SOAP 库 12.2.1. 安装 PyXML 12.2.2. 安装 fpconst 12.2.3. 安装 SOAPpy 12.3. 步入 SOAP 12.4. SOAP 网络服务查错 12.5. WSDL 介绍 12.6. 以 WSDL 进行 SOAP 内省 12.7. 搜索 Google 12.8. SOAP 网络服务故
问题内容: 以下代码是我的应用中的服务器代码: 代码工作方式,即如果我尝试直接连接,则两端进行通信和更新。 问题是即时通讯正在侦听连接,如果我想退出侦听,则服务器线程会继续运行并导致问题。 我知道我不应该在线程上使用.stop(),所以我想知道解决方案的外观如何? 编辑:注释掉不需要的代码。 问题答案: 从外部线程关闭服务器套接字。根据Serversocket.close()上的文档,阻塞接受将抛