第一次自学写webservice给我感觉真的很痛苦,曾经看见老师们几分钟就搞定,可现在我花了几个小时都没弄出处,还出了不少的错,现在我就把这些错记一记,以防以后写webservice又出错找不到解决办法
1. 错误:
Exception in thread "main" javax.xml.ws.WebServiceException: Unable to create JAXBContext due to the security restriction (WebServiceException:无法创建JAXBContext由于安全限制)
说明:数据库的数据已经全部读取完了,却还报空指针异常,去修改 Endpoint.publish的实例 Hibernate: select student0_.sid as sid1_0_, student0_.sNAME as sNAME2_0_, student0_.classId as classId3_0_ from Students student0_ Student [sid=10, sname=倪明, classId=2] Student [sid=11, sname=倪明, classId=2] Student [sid=2, sname=李红, classId=2] Student [sid=3, sname=黎明, classId=3] Student [sid=4, sname=张洋, classId=4] Exception in thread "main" java.lang.NullPointerException at com.sun.xml.internal.ws.server.EndpointFactory.getWsdlLocation(EndpointFactory.java:385) at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.getPrimaryWsdl(EndpointImpl.java:265) at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.createEndpoint(EndpointImpl.java:208) at com.sun.xml.internal.ws.transport.http.server.EndpointImpl.publish(EndpointImpl.java:138) at com.sun.xml.internal.ws.spi.ProviderImpl.createAndPublishEndpoint(ProviderImpl.java:92) at javax.xml.ws.Endpoint.publish(Endpoint.java:170) at com.youmeng.ws.servlet.StudentWs.main(StudentWs.java:43)
原代码:
@WebService @SOAPBinding(style=Style.RPC) public class StudentWs { StudentDaoImpl daoImpl = new StudentDaoImpl(); public List<Student> selectStudent(){ return (ArrayList<Student>) daoImpl.selectStudent(); } public static void main(String[] arg){ //发布webService Endpoint.publish("http://192.168.0.132/student", new StudentWs()); System.out.println("已经连接上IP为:http://192.168.0.132的地址"); }
解决办法:
将List<Student> 改为 ArrayList<Student>
2. 错误
org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromClass 信息: Creating Service {http://webservice.qxqpw.com/}HelloWorldService from class com.qxqpw.webservice.HelloWorld Exception in thread "main" javax.xml.ws.WebServiceException: Could not find wsdl:binding operation info for web method sayHi. at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:113) at $Proxy14.sayHi(Unknown Source) at com.qxqp.test.TestWebservice.main(TestWebservice.java:12)
解决:
spring cxf 异常: 有两个原因: 客户端的接口的包名(或者接口名)和服务端的包名(或者接口名)不一致 客户端的接口没有加上@Webservice注解
3. 错误
Exception in thread "main" javax.xml.ws.WebServiceException: Could not find wsdl:binding operation info for web method getListPnameByuid. at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:113) at $Proxy17.getListPnameByuid(Unknown Source) at cn.navidog.front.users.testwebservice.main(testwebservice.java:21)
解决方法
原因是因为客户端的service中的方法没有跟服务端绑定,只需要将客户端的Service接口加上注解@WebService,异常便解决了。
3.转化为xml形式
引入javax.ws.rs(jaxwr)见下方新文件
在方法上面添加
在方法上加 @GET @Path("/greeting") @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })
代码如下
@GET @Path("/greeting") @Produces("application/json") @Connsumes(MediaType.Appliaction_JSON) public List<Student> getStudentAll(@QueryParam("start")String start,@QueryParam("count") String count));
相关推荐
然而,部署过程中可能会遇到各种问题,如在本问题中遇到的"weblogic12c部署webservice错误问题WSSERVLET11"。 错误信息"无法解析运行时描述符: java.lang.IllegalStateException: MASM0001:"指出在部署Web服务时...
软件DEP则由Windows操作系统实现,它会监控进程的内存分配,如果发现有试图在数据页面上执行代码的行为,就会触发一个错误并终止进程。 针对Delphi 7的Web Service调用问题,我们可以采取以下策略来解决DEP引发的...
在IT领域,SAP Web服务(SAP Webservice)是一种重要的技术,用于集成不同系统间的业务流程。SAP Webservices允许外部系统调用SAP的功能模块,实现数据交换和服务共享。"SAP Webservice日志查询报表 V3"是一个专门...
在IT行业中,Web服务(WebService)是一种通过网络进行通信的标准接口,它允许不同的应用程序之间交换数据和协同工作。本文将详细探讨"访问WebService处理拦截开始访问的消息"这一主题,包括Web服务的工作原理、消息...
2. **WebService错误处理**: WebService的方法如果有错误,通常会返回“true”或“false”来表示成功或失败。但在异常情况下,它可能不会按照预期返回这些布尔值,而是抛出异常信息。对此,有两种常见的处理策略:...
WebServiceStudio是一款轻量级的Web服务测试工具,它允许开发者无需编写任何代码就能对Web服务进行快速、便捷的测试。这个工具特别适用于那些需要验证Web服务功能或调试接口的IT专业人员。在本文中,我们将深入探讨...
该文档详细介绍了如何解决Webservice更新错误问题
- **错误检测**:在调用过程中,工具会捕获并显示任何错误或异常,帮助定位问题。 3. **使用流程**: - 首先,需要获取Web服务的WSDL地址,这通常是服务提供商提供的。 - 在WebserviceStudio中输入WSDL地址,...
4. **开发工具设置**:如果使用IDE(如MyEclipse)进行开发,需确保项目配置正确,避免出现编译或运行时的错误。 综上所述,WebService是一种强大的跨平台通信手段,适用于多种应用场景。了解其基本原理和技术细节...
4. 错误检测和调试:如果请求出错,工具会提供错误信息,帮助开发者快速定位问题所在,从而进行修复。 5. 快速切换不同服务:由于这款工具轻巧且易于使用,可以在多个WebService之间快速切换,进行批量测试,节省了...
在实际项目中,可能还需要处理错误、认证、重试等复杂情况。例如,对于安全要求较高的服务,可能需要集成SSL/TLS支持,处理证书验证。对于可能出现的网络问题,需要实现重试机制。 总之,C++调用WebService涉及多个...
在实际工作中,开发人员可以利用WebServiceStudio快速验证WebService接口的功能,排查错误,提高开发效率。同时,由于其跨平台的特性,无论你是在Windows、Linux还是Mac上,只要安装了该工具,都可以进行测试。 ...
【标题】:“C# WebService调用测试工具” 在IT领域,Web Service是一种基于网络的、松散耦合的软件组件,它允许不同系统之间的数据交换。C# WebService调用测试工具是专为开发者设计的,用于测试和调试Web Service...
5. **WebService错误认识**: 错误选项d) "不需要Web服务器(如IIS)就可以单独运行的"。实际上,WebService通常需要Web服务器或应用服务器来托管并处理请求。 6. **Applet与WebService通信**: Applet与...
通过WebServiceStudio,开发者可以模拟不同的输入条件,检查服务的返回结果是否符合预期,这有助于找出潜在的问题和错误。 7. **SOAP和RESTful协议**:了解如何使用这两种常见的Web服务通信协议是非常重要的。SOAP...
第三个示例可能涉及到错误处理和异常管理,展示如何在出现问题时优雅地处理。 对于"webservicTest"主程序,它可能是一个客户端应用,用于发起对WebService的请求并接收响应。这通常包括设置SOAP消息,向WebService...
6. **错误处理**:处理可能出现的网络错误、解析错误或WebService调用错误。例如,检查HTTP状态码以确定请求是否成功,解析XML时要注意异常处理。 7. **MFC集成**:为了使代码更易管理和复用,可以将WebService调用...
需要注意的是,实际应用中可能还需要处理各种异常情况,例如网络错误、SOAP错误等,以确保程序的健壮性和稳定性。同时,为了提高代码的可读性和可维护性,建议将WebService调用封装成独立的函数或子程序,方便复用和...
成功时返回 XML 格式的结果,失败时返回错误信息。 数据字段说明 泛微 Webservice 接口文档说明提供了以下几个主要数据字段: 1. userId:用户 ID,varchar(100),用于标识用户的唯一身份。 2. userCode:用户...
在IT行业中,Web Service是一种基于XML的通信标准,允许不同系统之间进行互操作性交互。...在实际开发中,可以根据项目需求选择适合的客户端调用方式,同时注意处理异常和错误,确保服务的稳定性和可靠性。