问题标签 [jax-ws-customization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
312 浏览

java - Jax-Ws Web 服务的命名空间问题

我有一个场景,我在 Jax-Ws 中编写了 webserive,从这个 web 服务中,我称之为轴上开发的第三方 web 服务。

我面临命名空间问题,默认情况下,JAX-WS 在每个请求中添加命名空间属性,其中轴 Web 服务不采用命名空间。

有没有一种方法可以在将命名空间传递给轴 web 服务之前从 SOAP 请求中删除命名空间。我尝试编写处理程序并从 SOAP 请求中删除命名空间,但这似乎不是可行的解决方案。

0 投票
0 回答
625 浏览

java - 如何在 TCP/IP 监视器中仅获取没有标头的 SOAP XML 消息

我使用 JAX-WS 和 My Eclipse 开发了一个简单的 Web 服务项目。应用程序工作正常。但是如果我在 My Eclipse IDE 中看到 TCP/IP 监视器。

请求和响应显示如下:

请求部分:

回应部分:

在这里,我期待的是,我想查看 XML 格式的请求消息。但如您所见,请求/响应不是 XML 格式。如果我在 TCP/IP 监视器中选择 XML 作为视图,那么 TCP/IP 监视器会将请求/响应消息显示为非结构化。

所以,我的问题是,如何准确地以 XML 格式获取请求消息。

例如:

0 投票
1 回答
549 浏览

web-services - jaxws wsdl 通用实体

我想自定义 Web 服务上使用的实体的包名称。主要目标是在不同的 Web 服务之间共享实体。

我正在使用 jaxws + jaxb 将实体绑定到它们相应的包。但是,只有指向实体的 ObjectFactory 链接有效。似乎我无法覆盖使用 wsdl:definition:@targetnamespace 作为包名称。

这是一个例子:

我有一个 FooBarRemoteService 重新访问两个实体:Foo 和 Bar。它们中的每一个都是用定义的命名空间注释的@XmlRootElement(Foo:com.test.foo,Bar:com.test.bar)。

这是wsdl:

这是绑定文件

下面是生成 java 目标文件的命令:

这是生成的文件:

目标文件夹很好地重命名为子包文件夹。所以考虑了绑定,但是只有 ObjectFactory 存在。他们是一种让 ObjectFactory 与实体相关的方法吗?

我的 WSDL 是用 wildfly 下的一个简单程序生成的:这是我的文件:

界面FooBar

FooBar远程服务

酒吧

感谢您的回复。

问候,

达米安

0 投票
0 回答
398 浏览

java - 从 jsp 为 https 调用 CXF 客户端正在获取 org.apache.cxf.service.factory.ServiceConstructionException

我正在使用 JBoss 5.1 GA 服务器并在 server.xml 中配置 SSL,如下所示。从 jsp 调用我的 CXF 客户端得到以下错误:

请帮我解决这个错误。另一件事是,同样的战争在 tomcat 7 服务器中成功运行。

server.xml 中的 SSL 配置:


我的客户代码:

我的战争库:

我的 web.xml-> 因为我是直接从 jsp 调用的,所以我将 web.xml 设置为空,如下所示:

0 投票
1 回答
891 浏览

java - 属性中的 JAX-WS 命名空间,而不是前缀

可以在 JAX-WS 中生成 xmlns 属性而不是前缀吗?

示例:myns.a 包中的对象 A 包含 myns.b 包中的一些对象 B1、B2。生成的 SOAP 消息:

但是,我需要以这种方式生成它(因此应删除前缀 b 并且包 myns.b 中的所有对象都应具有 xmlns 属性):

有没有简单的方法,如何处理?例如在 package-info.java 级别?

0 投票
2 回答
3702 浏览

java - JAX-WS spring 服务器端为 RuntimeExceptions 设置自定义故障消息

问题

默认情况下,当RuntimeException我的服务器上发生未捕获的扩展异常时,JAX-WS 构建以下 SOAP 错误消息:

哪种有意义,除了我想改变这种行为以便发送它:

请注意,消息应该是 RuntimeException 的消息内容,而是自定义静态消息,用于扩展可能发生在服务器端的任何异常。RuntimeException

我无法更改 WSDL,也不想设置自定义异常。

我正在使用弹簧插件:com.sun.xml.ws.transport.http.servlet.WSSpringServlet

我怎样才能做到这一点?

0 投票
1 回答
1156 浏览

java - @javax.jws.WebMethod(exclude=true) 的替代解决方案是什么?

在将 CXF jar 从 2.2.12 升级到 3.1.6 的过程中,我在构建项目时遇到了 @javax.jws.WebMethod 注释中的“exclude=true”属性的问题。我得到以下异常。


[java] 错误:java.lang.RuntimeException:org.apache.cxf.jaxws.JaxWsConfigurationException:@javax.jws.WebMethod(exclude=true) 不能用于服务端点接口。方法:deleteFileInternal [java] 使用详细设置显示此错误的堆栈跟踪 [java] JavaToWS 错误:org.apache.cxf.tools.common.ToolException:org.apache.cxf.jaxws.JaxWsConfigurationException:@javax.jws .WebMethod(exclude=true) 不能用于服务端点接口。


这是因为 CXF 3.1.6 不支持“exclude=true”属性,而如果类使用 @javax.jws.WebService 注释进行注释,则从 java 类生成 WSDL。

有人可以为此建议替代解决方案吗?

0 投票
1 回答
961 浏览

wsdl - 为什么在 jax-ws 中默认不将 void return 方法和 throws no exception 方法视为一种方式操作?

我知道jaxws 2.2规范说a上没有带有as注释的所有public non-static non-final方法都应该映射到 wsdl:operation 元素。SEIWebMethodexcludetrue

它还说只有用javax.jws.OneWaymust be注释的方法oneway operation,如果该方法没有OneWay注释(即使它具有void返回类型和 no exception)不得映射到oneway operations。

我没有找到任何理由阻止void返回没有默认exception映射的方法。oneway operation这就产生了另一个问题。当任何返回类型为 no的方法时,为什么我们甚至需要OneWay注释?voidexceptiononeway operation

0 投票
0 回答
3684 浏览

java - 在 wsimport 中使用 JAXB 绑定扩展

我知道如何在普通的 JAXB 绑定文件中启用扩展 - 在根元素中列出它们extensionBindingPrefixes

但是,JAX-WS 绑定文件没有任何地方可以放置此属性。

它不能进入​​根目录,也不能进入任何嵌套jaxb:bindings元素。

你应该如何启用绑定扩展?


jaxws-maven-plugin:2.4.1 使用的示例命令行参数:

0 投票
3 回答
1566 浏览

java - jaxb2-basics-annotate with jaxws-maven-plugin configuration

I have a maven configuration using the jaxws-maven-plugin to generate the class files from the wsdl.

I am trying to get the jaxb2-basics-annotate plugin to work with the generation to allow me to add some annotations to the generated output.

The specific plugin configuration is:

...

When I have the args commented out I get the following error:

[ERROR] Using "http://annox.dev.java.net" customizations requires the "-Xannotate" switch to enable this plug-in.

When I have the args being used I get the following error message:

unrecognized parameter -Xannotate

Usage: wsimport [options]

where [options] include:

I would greatly appreciate if someone could fill in the gap in my configuration to get the annotation plugin working with the jaxws-maven-plugin.