标签: jax-ws

如何在码头上运行肥皂网络服务?

我正在努力让一个肥皂网络服务在我的嵌入式码头服务器上运行。

我遵循了这个德语教程(ofc不起作用): http://www.torsten-horn.de/techdocs/jee-jax-ws.htm#Deployment-im-Webserver

相关代码片段:

Endpoint ep = Endpoint.publish( url, new BuecherServiceImpl() );
int anzahlBuecherResult = TestWsClient.test( "WsMitEndpointIntegrTest", url, 4000000000L, anzahlBuecher, true );


public static int test( String testName, String url, long startIsbn, int anzahlBuecher, boolean trace ) throws Exception
{
  BuecherServiceIntf buecherService;
  if( url.equalsIgnoreCase( "direkt" ) ) {
     buecherService = new BuecherServiceImpl();
  } else {
     System.out.println( testName + ": " + url );
     Service service = null;
     int timeoutSekunden = 20;
     while( service == null ) {
        try {
           //here …
Run Code Online (Sandbox Code Playgroud)

java soap web-services jetty jax-ws

5
推荐指数
1
解决办法
4104
查看次数

wsdl Url 中“.wsdl”和“?wsdl”之间的区别

在 Web Sphere 服务器上部署了一个 jax-ws Web 服务,当我尝试使用 url 在浏览器中访问 wsdl 时

"Http://localhost:7001/HelloWorldService/port/helloworld?wsdl"
Run Code Online (Sandbox Code Playgroud)

我看到网址已更改为以下网址

"Http://localhost:7001/HelloWorldService/port/helloworld/HelloWorldService.wsdl"
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下.wsdl 和 ?wsdl 之间的区别以及需要做什么才能保持 url 与 ?wsdl 相同而不是更改为 .wsdl 吗?

java websphere wsdl web-services jax-ws

5
推荐指数
1
解决办法
4186
查看次数

政策断言被评估为“未知”。[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector] selectAlternatives

策略断言“{ http://schemas.xmlsoap.org/ws/2005/07/securitypolicy }EncryptedParts”被评估为“未知”。[com.sun.xml.internal.ws.policy.EffectiveAlternativeSelector] selectAlternatives

我在尝试访问网络服务时收到此警告,解决此问题的最佳解决方案是什么?

java web-services jax-ws

5
推荐指数
0
解决办法
2011
查看次数

SOAP 不支持的媒体异常 text/plain 支持的有:[text/xml]

在我们的应用程序中,我们有以下代码行向服务发出 SOAP 请求

@WebResult(
      name = "GetRequestResponse",
      targetNamespace = "urn://x-artefacts-smev-gov-ru/services/message-exchange/types/1.1",
      partName = "parameters"
   )
   GetRequestResponse getRequest(@WebParam(name = "GetRequestRequest",targetNamespace = "urn://x-artefacts-smev-gov-ru/services/message-exchange/types/1.1",partName = "parameters") GetRequestRequest var1) throws InvalidContentException, SMEVFailureException, SenderIsNotRegisteredException, SignatureVerificationFaultException, UnknownMessageTypeException;
Run Code Online (Sandbox Code Playgroud)

它曾经一直有效,直到服务将其响应内容类型从 更改text/xmltext/plain

它仍然返回有效的 XML,但只是在text/plain

我不想大幅修改代码,因为它是一个非常古老且过时的遗留库,专门用于向服务发出请求(另外,我不确定是否有可以替代它的东西)

总而言之,我们得到以下异常:

ru.voskhod.smev.message_exchange_service_client.WebServiceClientException: com.sun.xml.internal.ws.server.UnsupportedMediaException: Unsupported Content-Type: text/plain;charset=utf-8 Supported ones are: [text/xml]
  at ru.voskhod.smev.message_exchange_service_client.MessageExchangeEndpoint.getRequest(MessageExchangeEndpoint.java:457)
Run Code Online (Sandbox Code Playgroud)

有没有办法让它接受text/plain并以同样的方式对待它text/xml

content-type jax-ws jakarta-ee

5
推荐指数
1
解决办法
1267
查看次数

迁移到 Java 11 时如何替换 JAX-WS

我们开发的 Java 应用程序仍然需要 Java 8 才能运行,并且计划支持 Java 11。为此,我们必须找到与已删除的 xml 和 Web 服务相关的类的替代品(请参阅JEP 320)。我们下载了所需的所有 jar,但是当我们尝试连接到 Web 服务时,出现以下错误:

MASM0004: No <tubelines> section found in the default [ jaxws-tubes-default.xml ] configuration file
Run Code Online (Sandbox Code Playgroud)

比较 Java 8 中的 jaxws-tubes-default.xml 文件和我们收集的 jar 文件,我们发现它们的内容几乎相同,除了包名称略有不同。

据我们所知,发生这种情况是因为文件解组器将 xml 内容读取到类的错误属性中com.sun.xml.ws.runtime.config.MetroConfig。从 xml 读取的对象Tubelines未设置在tubelines属性上。相反,它是在any属性上设置的。

深入调试代码,我们可以看到在 Java 8 上该tubelines属性与命名空间“http://java.sun.com/xml/ns/metro/config”相关联,但在 Java 11 上则不然。

我们无法进行更深入的挖掘,也无法在网络上找到任何相关信息。

有谁知道可以帮助我们按预期解析文件吗?

编辑: 有人建议我的问题与重复,但事实并非如此。链接的问题解释了 Java 11 带来的变化。我的问题是关于我在执行这些步骤时发现的问题。我们遇到的问题并未在该问题中得到解决。

java jax-ws java-11

5
推荐指数
0
解决办法
4872
查看次数

如何在 spring 中启用 ws-addressing 以便回复可以被理解?

我使用 spring-boot-starter-webservices 使用 spring 创建了一个 ws 端点。

我用过@org.springframework.ws.server.endpoint.annotation.Endpoint,效果很好。

但是当我尝试将寻址标头添加到带有服务器打印的wsa:ReplyTo请求时:mustUnderstand=true

无法处理 MustUnderstand 标头:{http://www.w3.org/2005/08/addressing}ReplyTo。返回故障

并返回类似的故障作为响应。

如何启用寻址以便ReplyTo被理解并回复202,将响应发送到中描述的不同端点ReplyTo

我尝试添加@javax.xml.ws.soap.Addressing(enabled=true)旁边的@Endpoint注释,但我仍然得到上述行为。

spring jax-ws ws-addressing spring-boot

5
推荐指数
0
解决办法
372
查看次数

为什么JAX-WS调用返回的Maps总是空的?

我的Web服务方法返回一个Page对象,其中包括以下方法:

public Map<String,String[]> getParameters() { ... }
public setParameters(Map<String,String[]> parameters) { ... }
Run Code Online (Sandbox Code Playgroud)

在客户端,JAX-WS生成的getParameters()方法返回一个Parameters对象,该对象提供getEntry()返回a 的方法List<Entry>.但是,此列表始终为空.原因是什么?

java web-services jax-ws map

4
推荐指数
1
解决办法
4020
查看次数

Maven:从jar中提取文件

我正在开发一个WebService的客户端应用程序,我在jar中有相应的WSDL文件.

我正在使用ant从wsdl生成带有以下build.xml的java代码:

<project name="wsimport" default="wsimport" basedir=".">
<taskdef name="wsimport" classname="com.sun.tools.ws.ant.WsImport" />

  <target name="wsimport">
     <echo message="Starting wsimport"/>
     <mkdir dir="target/generated-sources/jaxws-wsimport"/>
     <wsimport
        wsdl="???"
        sourcedestdir="target/generated-sources/jaxws-wsimport"
        extension="true"
        verbose="true"
        target="2.0"
        xnocompile="true"
        catalog="src/jax-ws-catalog.xml"
        wsdlLocation="/MyWebService/MyWebServiceV1_0?wsdl">
        <binding dir="src/main/resources/bindings/v1_0" includes="*.xml"/>
        <xjcarg value="-XhashCode"/>
        <xjcarg value="-Xequals"/>
        <xjcarg value="-XtoString"/>
     </wsimport>

   </target>
</project>
Run Code Online (Sandbox Code Playgroud)

如何从jar加载WSDL文件?WSDL引用了一个XSD,它也在同一个jar中.

wsdl jax-ws maven

4
推荐指数
1
解决办法
8321
查看次数

征求反应模式及其用法

我正在阅读有关Web服务中的消息交换模式(MEP)的信息.
我遇到了一个名为的模式Solicit Response.

我用Google搜索了它,但没有找到关于它及其用法的更多信息.
任何人都可以给我详细介绍这个及其使用场景.

提前致谢.

java soap web-services jax-ws

4
推荐指数
1
解决办法
4381
查看次数

jaxws-api 2.2没有在maven构建中加载

我用Apache CXF工具wsdl2java生成了Java代码.在我的服务评论中,它说我应该支持Jaxws API 2.2,但不知道它意味着什么.在我的Maven POM中我有这个:

<dependency>
        <groupId>javax.xml.ws</groupId>
        <artifactId>jaxws-api</artifactId>
        <version>2.2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

在构建时,我在Maven中遇到这些错误:

找不到符号符号:构造函数服务(java.net.URL,javax.xml.namespace.QName,javax.xml.ws.WebServiceFeature [])

我检查了JAX-WS API 2.2,它实际上有这个构造函数......我该怎么办?

cxf jax-ws endorsed maven-3

4
推荐指数
1
解决办法
5593
查看次数