草庐IT

java - 我如何像 JAX-RS(CXF 和 Jersey)一样使用 JAXB 编码 java.util.List

这个问题在这里已经有了答案:IsitpossibletoprogrammaticallyconfigureJAXB?(1个回答)关闭7年前。最新的JAX-RS似乎可以处理将java.util.List作为XMLRootElement返回的方法,但普通的JAXB不能。我想模仿CXF和Jersey正在做的事情。换句话说,我想编码一个列表,就像CXF和Jersey一样。通常,如果您尝试使用JAXB编码列表,您会得到RootElement异常。如何在不必制作包装对象的情况下解决这个问题?编辑:感谢您提供的许多答案,但我对@XmlElementWrapper非常熟悉,但这甚至无法模拟JAX-RS

java - JAX-WS 和 Joda-Time?

如何编写一个JAX-WS服务,使我的@WebMethod的@WebParam是一个像DateTime这样的Joda-Time类?参数上的@XmlTypeAdapter会起作用吗?我正在部署到GlassFish2.1。让我澄清一下这个问题,因为到目前为止,这两个答案都侧重于将自定义类型绑定(bind)到现有的JAXB类,这是相关的,但不是我要问的问题。如何使以下@WebService接受jodaDateTime对象作为参数?importjavax.jws.WebMethod;importjavax.jws.WebParam;importjavax.jws.WebService;impor

java - 如何使用 JAX - RS 在 Java 中使用 Web 服务从数据库插入数据

我是网络服务的新手。请给出如何使用jerseyJAX-RSinjava从数据库中插入和检索数据的建议? 最佳答案 下面是一个JAX-RS服务作为sessionbean实现的示例,使用JPA进行持久化,使用JAXB进行消息传递可能看起来像.客户服务packageorg.example;importjava.util.List;importjavax.ejb.*;importjavax.persistence.*;importjavax.ws.rs.*;importjavax.ws.rs.core.MediaType;@Stateles

java - JAX-RS 注释 : Better to put on Interfaces or Classes?

我处于REST实现的早期阶段,最近了解到我们可以将JAX-RS注释放在我们的Java服务接口(interface)而不是类实现上。在我看来,这可能会产生一个干净的类文件,但也可能导致开发人员不得不不断地在文件之间混淆。每种方法的优缺点是什么? 最佳答案 你应该把它放在一个界面中。相反,我的实践要求我将它放入一个接口(interface)中,因为我的客户端和服务器端共享相同的jax-rs定义。我倾向于将jax-rs用于REST-RPC。REST的原因是允许Web服务URLAPI可由任何编程框架提供服务和“客户端”。jax-rs的使用限

java - JAX-WS Sharepoint 401 未经授权的 NTLM

我尝试按照描述的方式通过JAX-WS访问Sharepoint列表here但是,当运行下面的代码时,我得到:java.lang.Exception:Exception.Seestacktrace.com.sun.xml.internal.ws.client.ClientTransportException:TheserversentHTTPstatuscode401:UnauthorizedSharepoint需要NTLM身份验证。可能是什么问题?非常感谢!publicstaticListsSoapsharePointListsAuth(StringuserName,Stringpass

java - 没有 sun-jaxws.xml 的 Tomcat 上的 JAX-WS Web 服务

在Tomcat上部署基于JAX-WS的Web服务时,我试图尽量减少所需的配置。随着Servlet3.0的引入(Tomcat7+支持),web.xml可以扔掉了,但是还有sun-jaxws.xml。这blogpost很有趣:Ofcourse,withtheuseofjax-wsannotations,evenconfigurationsun-jaxws.xmlcanbemadeoptionalmakingitcompletelydescriptorfree,butthatrequiresspecifyingadefaulturl-patternlikeinJSR-109orcustomp

java - jax-ws/wsimport 生成带有 void 返回的 WebMethod - 相同的 Request/ResponseWrapper

我正在处理客户端的WSDL文件,该文件对输入和输出消息使用相同的元素定义,但我无法让JAX-WS/JAXB解码响应。由于某些原因,wsimport生成的代码有一个无效的返回值,并且在收到响应时似乎没有更新INOUT参数。/***ThisclasswasgeneratedbytheJAX-WSRI.*JAX-WSRI2.1.7-b01-*Generatedsourceversion:2.1*/...@WebMethod@RequestWrapper(localName="requests",targetNamespace="http://cg.test.com/",className="

java - JAX-RS 中等效的 Servlet init() 方法

我正在开发一个在Glassfish上运行的应用程序。我应该通过使用jax-rs和jersey将servlet转换为适当的restful内容。我一直在尝试为init()方法寻找解决方法,但直到现在我都失败了。这是原始部分,使用servlet:importjavax.servlet.*publicvoidinit(ServletConfigconfig)throwsServletException{super.init(config);if(!isRunning()==true)){/*Dosomestuffhere*/}logger.info("Deamonhasstarted");}还

java - 如何在 POST 期间获取不同资源的 JAX-RS @Path?

我有两个用于涉及用户资源的简单Web服务(Jersey和GlassFish)的REST类-一个对所有用户进行操作(例如,@POSTing的工厂),另一个对单个用户进行操作(例如,@GET、@放,@DELETE)。他们在:@Stateless@Path("users")publicclassAllUsersResource{...}@Stateless@Path("user")publicclassOneUserResource{...}分别。发布到AllUsersResource时,我想返回新用户的位置(通过Response.created(uri).build()),例如,http:

java - 更改 jax-rs REST 服务中的内容类型

请原谅,我可能不熟悉正确提出这个问题所需的所有行话。我正在使用jax-rs的org.apache.cxf.jaxrs.ext实现在Java中开发一个相当简单的RESTWeb服务。方法头是这样的:@GET@Path("json/{fullAlias}")@Produces({"application/json"})publicStringjson(@PathParam("fullAlias")StringfullAlias,@ContextMessageContextreq)其中MessageContext是org.apache.cxf.jaxrs.ext.MessageContext。