问题标签 [cxf]
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.
java - 通过 CXF 的 Web 服务调用提供空参数
我有两个代码项目都使用 CXF 来使用 Web 服务。当我从项目 A 调用项目 B 时,我正在调用的方法接收空参数。我打开了日志记录,入站消息确实包含正确的参数。我还尝试从 SoapUI(一种网络服务测试工具)调用我的服务。正如我所料,这会传递参数。有人知道出了什么问题吗?
服务接口:
服务内涵:
记录证明没问题的入站消息:
CXF 的版本相同(2.2.5)。我想不出还有什么要检查的!
一些要求的信息...
- @Name 是一个 Seam 注释
- 以编程方式配置
- Aegis 数据绑定(JAXWS 不喜欢接口)
java - 部署 WAR 时 glassfish 找不到我的 wsdl
我有一个首先创建 WSDL 的 CXF 服务服务,当我将 WAR 部署到 glassfish 应用服务器 2.1.1 中时,出现以下异常:
如果我将 WSDL 放在那个位置,一切正常。如何设置我的 WAR 以便将 TestService.wsdl 放入配置文件夹?
谢谢!
更新:我仍然无法将此服务部署到 Glassfish。因为它在 Tomcat 中部署和运行良好。
我在构建期间将 -wsdlLocation 属性设置为“WEB-INF/wsdl/TestService.wsdl”,但是现在当我在 glassifish 中部署应用程序时,我在 server.log 中得到以下异常
引起:java.lang.RuntimeException:wsdl 文件文件:/C:/development/wexlink/FileUploadService/wsdl/FileUploadService.wsdl 不存在用于 com.sun.enterprise.deployment.util.ModuleContentValidator.accept 的 Web 服务 FileUploadService( ModuleContentValidator.java:187) 在 com.sun.enterprise.deployment.WebBundleDescriptor.visit(WebBundleDescriptor.java:1410) 在 com.sun.enterprise.deployment.archivist.WebArchivist.postOpen(WebArchivist.java:171) 在 com.sun .enterprise.deployment.archivist.Archivist.open(Archivist.java:215) 在 com.sun.enterprise.deployment.archivist.ApplicationArchivist.openArchive(ApplicationArchivist.java:813) 在 com.sun.enterprise.deployment.archivist.ApplicationArchivist .openArchive(ApplicationArchivist.java:794) 在 com.sun.enterprise.deployment.backend.Deployer。loadDescriptors(Deployer.java:365) ... 还有 10 个 |#]
java - 如何在我的 Maven pom 中包含 apache-cxf 作为依赖项?
Apache CXF 将它们的版本“同步”到 Maven 中央存储库。当我查看 CXF 条目时,没有 jar 文件,只有 pom.jar 文件。
如果我在我的 pom 中包含以下部分,则构建失败,因为它无法下载 cxf 依赖项:
如果我将类型更改为“pom”,则构建成功,但未下载相应的 jar(因此,显然,未包含在包中。)
我错过了什么?
web-services - 使用 CXF Webservice 进行服务器端 XML 验证
我正在开发一个 Apache CXF 网络服务(使用 JAX-WS,通过 SOAP)。服务本身非常简单:接收请求,将请求插入数据库,并返回插入是否成功。我想依靠 XML 验证来对请求实施一些约束。
所以,我的问题。如何将详细的验证错误返回给我的服务客户?我通过配置我的端点打开了服务器端的验证。
我已经探索过在服务器上使用拦截器(例如 BareInInterceptor),并以某种方式捕获 SAXParseExceptions 来包装它们并将它们发送到客户端。这种方法似乎有点复杂,但如果他们的 XML 无效,我需要以某种方式给客户一个行号。我应该使用拦截器来公开异常吗?
我对这个技术堆栈不是很有经验,只是进入网络服务——你们能给我的任何指示都会非常感激。
cxf - WSDL2Java 工具错误 Apache CXF
当我们使用 WSDL2Java 工具生成存根时出现以下错误。Web 服务已启动并正在运行。
WSDLToJava 错误:org.apache.cxf.wsdl11.WSDLRuntimeException:无法从以下位置创建 wsd l 定义:http ://scheduler.heartbeatsoftware.com/scheduler/WebServices /SampleSNMWebService?wsdl 原因:WSDLException:faultCode=PARSER_ERROR:java.lang .IllegalArgumentExce ption: InputSource 必须有 ByteStream 或 CharacterStream
如果我们下载 wsdl 并从该 wsdl 生成存根,它们就会被生成。但是使用这些存根的 java 客户端会抛出与上面相同的异常
奇怪的是,当我们在 LAN 上部署相同的 web 服务时,没有遇到这样的问题,存根生成成功,随后的 java 客户端运行良好。
该网络服务使用 apache cxf 2.2.5 版创建并托管在 tomcat 6 上
任何指针将不胜感激
问候萨米尔
java - 我可以将 cxf 配置为使用特定的 XML 解析器吗?
有没有办法指定 cxf 使用哪个 XML 解析器?通过 cfx.xml 文件还是以编程方式?
我们的应用程序在其类路径中有 Woodstox 解析器,而 cxf 似乎默认使用它。但是,Woodstox 实现似乎截断了 SOAP 数据包中的大型 Base64 编码字节数组。
从类路径中删除 Woodstox 消除了这个截断问题,但现在这不是一个选项,因为我们应用程序的其他部分也依赖于 Woodstox。
如果我可以简单地告诉 cxf 使用另一个 XML 解析器,那将是理想的。这可能吗?
jax-ws - Expose a POJO as a Websevice in Mule via Configuration _Only_?
Technologies Involved
- Mule
- Apache CXF
Given
A simple POJO (controversial acronym, but let's say a smart POJO):
Need to Achieve
Expose SmartPojo
as a Webservice without touching the code ( without: changing SmartPojo
, changing SmartPojoInterface
, adding a new interface, any JAX-WS annotations, etc ). The goal is to use Mule configuration only.
I can easily do it with Spring Integration, and would appreciate any input on how to achieve it with Mule. ( It seems that "cxf:inbound-endpoint" needs to be configured with "method-entry-point-resolver" + providing my WSDL in some way.. or another direction? )
Thank you