cxf 相关问题

Apache CXF使用前端编程API(如JAX-WS和JAX-RS)帮助您构建和开发服务。这些服务可以使用各种协议,例如SOAP,XML / HTTP,RESTful HTTP或CORBA,并可以在各种传输上工作,例如HTTP,JMS或JBI。

使用 Apache CXF 进行摘要式身份验证

我正在尝试使用 Java 和 Apache 的 cxf 库进行 Web 服务调用,当然,如果可能的话,这应该通过摘要身份验证进行,如果服务器不支持,则基本作为后备...

回答 1 投票 0

使用 Apache CXF 实施 SOAP“网关”?

我有一个需要 SenderVouches 身份验证的服务,它适用于基于 CXF 的 Java 应用程序。但现在我们需要集成一个不支持的基于.NET的应用程序

回答 1 投票 0

CXF 路线图不明确,阻碍我们采用 Jetty 12

我有一个问题,CXF(当前为 4.0.4)不支持 Jetty 12,从而阻止我们将其与 Spring Boot 3.2.0+ 一起使用。 我试图找到他们的发展路线图,但是......

回答 1 投票 0

带有 eclipse MOXY JAXBContextFactory 的 Aache-CXF WS 客户端不发送安全标头

我使用 Apache-CXF WS 作为 SOAP 客户端。侧面 SOAP 端点具有安全性(用户名/密码)要求。我还使用 org.eclipse.persistence.eclipselink 来更改 JAXBContextFactory,因为 defa...

回答 1 投票 0

Apache CXF 无法处理重复的本地名称

我正在尝试为新的第 3 方服务生成 Java 存根。它之前工作没有问题,但最近他们添加了一个新方法 verifyDataExistence 和 wsdl2java 失败了...

回答 1 投票 0

严重:配置类时出错 [org.springframework.web.context.ContextLoaderListener] NoClassDefFoundError:javax/servlet/ServletContextListener

我正在尝试使用 Apache CXF 并从 Maven 原型:org.apache.cxf.archetype 开始创建一个 SOAP java First Web 服务。我的应用程序服务器是标准的 Apache Tomcat v10.0。 pom.xml: <

回答 1 投票 0

使用 cxf-codegen-plugin 的 Soap 标头

我正在使用 cxf-codegen-plugin 在 Java 中生成 WSDL 类,我想将 Soap 标头添加到请求中,但它们没有在插件中生成。我如何添加它们? 这是我定义的插件...

回答 1 投票 0

使用 Spring Boot 设置附加 CXFServlet

我目前正在尝试让 CXF Servlet 与常规 Web MVC Servlet 一起运行。我的 CXF Servlet 定义了多个端点,即: /api/v1/* /肥皂/v2/* /内部-api/v1/* 我也想要

回答 1 投票 0

将 org.apache.cxf 从版本 3 升级到版本 4 时出现构建错误

我有一个使用 org.apache.cxf -artifactId cxf-rt-frontend-jaxrs 版本 3.3.7 的 java 应用程序,但是当我尝试将其升级到版本 4 时,出现构建错误。正如之前的代码曾经可以工作的那样

回答 1 投票 0

没有消息正文编写器

我有一个生成的 JAXB 类(来自 XSD)。我能够以 XML 和 JSON 形式返回,但是一旦我将 text/html 添加到 Produces 注释中,我就会得到: “没有响应类 Empl 的消息正文编写器...

回答 1 投票 0

原因:java.lang.NoSuchFieldError:升级cxf 3.5.5和spring 5.3.27时出现REFLECTION

将 Apache cxf 从 3.4.4 升级到 3.5.5 以及 spring 5.2.22 升级到 5.3.27 时出现以下错误。 搜索堆栈溢出帖子,大多数都指向 jaxb 版本不匹配。我有以下 jaxb 版本:

回答 1 投票 0

如何使用 CXFNonSpringJaxrsServlet 将 swagger 工具与 apache CXF REST Web 服务集成?

能否请有人提供在没有 Spring 框架支持的情况下将 Swagger 集成到 Apache CXF JAX-RS 应用程序中的明确步骤(使用 org.apache.cxf.jaxrs.servlet。

回答 1 投票 0

CXF 和弹簧启动执行器,执行器端点不可用

我有一个使用 Spring Boot 1.4.2 和 CXF JAXRS 的项目设置。我想将弹簧启动执行器添加到项目中。这是我添加到项目中的配置。 我有一个使用 Spring Boot 1.4.2 和 CXF JAXRS 的项目设置。我想将弹簧启动执行器添加到项目中。这是我添加到项目中的配置。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-actuator</artifactId> </dependency> 在此之后我创建了一个 WAR 文件,然后将其部署在外部 tomcat 服务器中。但是当我访问健康 URL localhost:8080/management/health 时,它给出 404 HTTP 代码。服务器正常启动,我可以看到包含以下详细信息的日志: 健康配置日志 [localhost-startStop-1] 信息 org.springframework.boot.actuate.endpoint.mvc.EndpointHandlerMapping - 映射“{[/management/health || /management/health.json],products=[application/json]}" 公开 java.lang.Object Servlet 配置日志 [localhost-startStop-1] 信息 org.springframework.boot.web.servlet.DelegatingFilterProxyRegistrationBean - 映射过滤器:'springSecurityFilterChain' 到:[/*] [localhost-startStop-1] 信息 org.springframework.boot.web.servlet.FilterRegistrationBean - 映射 过滤器:“webRequestLoggingFilter”至:[/*] [localhost-startStop-1] 信息 org.springframework.boot.web.servlet.FilterRegistrationBean - 映射 过滤器:“applicationContextIdFilter”至:[/*] [localhost-startStop-1] 信息 org.springframework.boot.web.servlet.ServletRegistrationBean - 映射 servlet:'dispatcherServletRegistration' 到 [] [localhost-startStop-1] 信息 org.springframework.boot.web.servlet.ServletRegistrationBean - 映射 servlet:'dispatcherServlet' 到 [/] [localhost-startStop-1] 信息 org.springframework.boot.web.servlet.ServletRegistrationBean - 映射 servlet:'CXFServlet' 到 [/services/*] 问题已解决,这是详细信息。由于 CXF 和 Spring Boot 一起配置在一起,因此 CXF REST API 和执行器端点都配置为 '/'。为 CXF RESt 端点配置的 servlet bean 的名称是dispatcherServletRegistration。由于 CXf 的引导启动器位于 POM 中,因此还发生了 CXF servlet 的自动配置。因此,您可以找到 CXFServlet 也配置为 /services/*。 将 servlet: 'dispatcherServletRegistration' 映射到 [] 将 servlet: 'dispatcherServlet' 映射到 [/] 将 servlet:“CXFServlet”映射到 [/services/*] 我删除了自动配置选项(CXFServlet),因为我需要一些 CXF JAXRS 实现所需的自定义,并将 dispatcherServletRegistration 映射到 /services/*,现在一切正常。现在执行器在 '/' 下工作,CXF REST API 在 /services 下工作。 就我而言,我有 Spring 1.5.X ,我无法对 CXF 和 Spring Actuator 使用两个不同的基本路径。我需要保留“/”作为根应用程序路径,并添加一个 RestEnpoint 来返回执行器运行状况结果。 因此,当 CXF 返回使用 @Autowired + ObjectMapper 在服务层上生成的 Health Info 的字符串结果时,我使用另一种方法。 注意:您应该启用注释上下文支持才能应用此解决方案。 以下解决方法对我有用: 将 CXF Servlet 保留在“/”上 在我的例子中,我使用 Camel + CXF,但是您需要做的就是创建以下组件来构建 Health 对象: @Component public class InfoHealthEndpoint extends HealthEndpoint { @Autowired private InfoEndpoint infoEndpoint; public InfoHealthEndpoint(HealthAggregator healthAggregator, Map<String, HealthIndicator> healthIndicators) { super(healthAggregator, healthIndicators); } @Override public Health invoke() { Health health = super.invoke(); return new Health.Builder(health.getStatus(), health.getDetails()) .withDetail("info", infoEndpoint.invoke()) .build(); } } 并创建一个为 CXF 响应控制器返回字符串结果的服务。 @服务 公共课 HealthService { @Autowired private InfoHealthEndpoint infoHealthEndpoint; @Autowired private ObjectMapper mapper; private static final String HEALTH_UP = "UP"; public void health(Exchange exchange) throws JsonProcessingException { Health health = infoHealthEndpoint.invoke(); String healthReponse = mapper.writeValueAsString(infoHealthEndpoint.invoke()); if(!HEALTH_UP.equals(health.getStatus().getCode())){ Response response = Response.status(503).entity(healthReponse).build(); exchange.getOut().setBody(response); exchange.setProperty(Exchange.ROUTE_STOP, Boolean.TRUE); }else{ exchange.getIn().setBody(healthReponse); } } } 注意:在我的例子中,我使用 Apache Camel (Exchange) 在路由上设置响应,但是此解决方案可以通过使用简单的字符串返回适用于另一种情况。 此答案归功于@Danny:将 Spring Boot Actuator /health 和 /info 合并为一个 它对我有用 @Bean @Primary public DispatcherServletPath dispatcherServletPath() { return () -> ""; } @Bean public DispatcherServlet dispatcherServletActuator() { return new DispatcherServlet(); } @Bean public ServletRegistrationBean<CXFServlet> dispatcherServlet() { ServletRegistrationBean<CXFServlet> cxf = new ServletRegistrationBean<>(new CXFServlet(), "/v1/*"); cxf.setName("cxfServlet"); return cxf; }

回答 3 投票 0

将 CXF 与 Spring Boot Actuator 结合使用

我正在开发一个 Web 服务主机应用程序,其中使用 cxf 和 spring boot。当我使用以下代码注册 cxf servlet 时,Web 服务端可以工作,我可以看到已发布的 wsdls。 然而...

回答 5 投票 0

使用 docker compose 部署的 CXF Web 服务将无法工作

使用spring/spring boot/spring cloud几年后。我决定从基础开始学习 Jakarta EE 我有 CXF 基本 JAXRS Web 服务,带有虚拟 api,可以通过 CLI 在本地工作 (java -jar ...

回答 1 投票 0

使用CXF wsdl2java从wsdl生成java时如何更改javadoc注释语言?

我使用CXF wsdl2java命令从wsdl文件生成java源: wsdl2java -impl -服务器 -d 但生成的评论是法语...

回答 3 投票 0

将 XSD 导入目标命名空间中的 WSDL 错误

使用 Apache CXF 4.0.3 中的 wsdl2java 在尝试将 XSD 导入我的 WSDL 文件时遇到错误。这些文件来自第 3 方,对于早期版本的 CXF,导入工作正常...

回答 2 投票 0

Apache CXF - 使用 HTTP 400 代码处理响应

我使用的是 SOAP 客户端,由 Apache CXF 框架生成。 我尝试连接的服务使用soap:Fault 消息处理业务错误。 我想解释这些按摩并处理...

回答 1 投票 0

如何在 CXF 中的 JAX-RS Restful Web 服务中接收 POST 正文中的 JSON 消息?

我正在尝试在 JAX-RS 之上使用 Apache-CXF 开发 REST 服务。对于初学者,我有一个名为 test 的方法,它接收 String 消息和 int 值。我希望客户能够通过

回答 1 投票 0

无法加载扩展类org.apache.cxf.ws.policy.AssertionBuilderRegistryImpl

我正在为 cxf 配置的类上运行 junit。我收到这个错误 导致:org.apache.cxf.bus.extension.ExtensionException:无法加载扩展类org.apache.cxf.ws.policy。

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.