WebService - [Debug] javax.xml.ws.WebServiceException: Undefined port type
背景:
使用JDK来开发java web service (Create a SOAP-based RPC style web service endpoint by using JAX-WS)。
具体请看 -> WebService - 使用JDK开发WebService
代码:
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
import java.net.MalformedURLException;
import java.net.URL; public class WebServiceClient {
public static void main(String[] args) throws MalformedURLException { URL url = new URL("http://127.0.0.1:8080/WS_Server/Webservice?wsdl");
QName qname = new QName("http://webservice/", "WebServiceImplService"); Service service = Service.create(url, qname); WebServiceI serviceI = service.getPort(WebServiceI.class); System.out.println(serviceI.sayHello("cuixunxu ")); }
错误:
Exception in thread "main" javax.xml.ws.WebServiceException: Undefined port type: {http://webservice/}WebServiceI
at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:456)
at com.sun.xml.internal.ws.client.WSServiceDelegate.getPort(WSServiceDelegate.java:463)
at javax.xml.ws.Service.getPort(Service.java:188)
at webservice.client.WebServiceClient.main(WebServiceClient.java:19)
解决方法:
@WebService的接口类WebServiceI代码:
package webservice; import javax.jws.WebMethod;
import javax.jws.WebService; @WebService
public interface WebServiceI { @WebMethod
String sayHello(String name); @WebMethod
String save(String name,String pwd); }
WebServiceI接口的实现类WebServiceImpl类的代码:...注意,需要在@WebService注解后面加上接口的全路径
package webservice; import webservice.WebServiceI; import javax.jws.WebService; @WebService(endpointInterface="webservice.WebServiceI")
public class WebServiceImpl implements WebServiceI {
@Override
public String sayHello(String name) {
return name + "is calling!!!";
} @Override
public String save(String name, String pwd) {
return "Receive name: " + name + " and pwd: " + pwd;
}
}
WebService - [Debug] javax.xml.ws.WebServiceException: Undefined port type的更多相关文章
- javax.xml.ws.webserviceexception class do not have a property of the name
我是用wsimport生成webservice 的客户端,放到工程里,调用,出现这个异常, 后来发现,是没有把package-info.java这个文件一起放到包里的缘故 解决: 连同package- ...
- javax.xml.ws.soap.SOAPFaultException: 没有Header,拦截器实施拦截
客户端代码: client.getOutInterceptors().add(new AuthInterceptor("zhangsan", "123456") ...
- 使用idea的的第一个坑-----javax.xml.ws.WebServiceRef
新建项目启动报错的时候,一直报这个错,类找不到,郁闷了半天,都没百度到结果,后来发现是添加tomcat的时候jre没 指定..... 哈哈哈,太懵逼了,指定就ok了
- java.lang.ClassNotFoundException: com.sun.xml.ws.spi.ProviderImpl解决办法
问题现象: 这种很可能出现在独立一个简单示例项目中可以用,但是在把webService模块加入系统后,报出这类错误. Exception in thread "main" java ...
- WebService基础入门 CXF(WS + RS)
一.基本介绍 Web Services是一个软件接口,它描述了一组可以在网络上通过标准化的 XML 消息传递访问的操作.它使用基于 XML 语言的协议来描述要执行的操作或者要与另一个 Web 服务交换 ...
- WebService 的CXF框架 WS独立服务之HelloWorld
WebService:不同系统不同语言的数据交互, CXF主要分为两种服务方式: 1 )JAX-WS:传输数据, xml格式,基于SOAP协议(规范:规定了xml传递数据的编码规范) ; 2 )JAX ...
- WebService - [Debug] java.net.BindException: Can't assign requested address
Connected to the target VM, address: '127.0.0.1:57803', transport: 'socket' Exception in thread &quo ...
- java 写webservice接口解析xml报文
1 <!--解析xml报文--> 2 <dependency> 3 <groupId>dom4j</groupId> 4 <artifactId& ...
- jdk10运行springboot项目出现:Type javax.xml.bind.JAXBContext not present
项目由openjdk8.0迁移到jdk10导致的 原因:java9模块化的概念使得JAXB默认没有加载: jaxb-api是存在jdk中的,只是默认没有加载而已,手动引入即可. 推荐方式: <! ...
随机推荐
- zabbix问题-非常少的网络故障失败或罕见:Proxy超时的问题
解决方案 在zabbix_agentd.conf中添加这些. BufferSend = 10 BufferSize = 150 MaxLinesPerSecond = 100 Timeout = 29 ...
- SpringBoot打包成war
关于SpringBoot打成jar包以及jar包如何在Linux持久运行,我在前面已经说过了,所以本次不再赘述. 关于SpringBoot打包成war,其实步骤特别简单,如下图所示(如果是jar,通常 ...
- CentOS-常用安装
JDK安装 1.检查jdk版本:java -version 2.检查jdk安装包:rpm -qa|grep java 3.将要安装的jdk的tar.gz包拖入,CRT快捷键ALT+P 4.解压到指定目 ...
- JVM-高效并发
Java内存模型与线程: Java内存模型的目的是定义程序中各个变量的访问规则,此处的变量包括实例字段.静态字段和构成数组对象的元素,但不包括局部变量和方法参数,因为后者是线程私有的. Java内存模 ...
- PHP 练习(新闻发布)
1.新闻发布主页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...
- IntelliJ IDEA 2018.3 重大升级,哪些功能打动了你?
前言 2018.11.28 IntelliJ IDEA 2018.3 正式版发布.对于一个忠实爱好者,迫不及待的我下载了最新版本来体验下.而且 IDEA 今年的第三次重大更新提供了不容错过的显著功能! ...
- Mac之lnmp环境搭建
之前在Windows上开发大部分都是使用的集成环境(xampp,phpstudy,wamp),可以完成日常便捷开发,有些时候却Windows下无法实现的就需要自己搭建虚拟机,在虚拟机中搭建lnmp环境 ...
- Mybatis映射文件的自动映射与手动映射问题
Mapper XML 文件 MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会 ...
- Ninja编译过程分析
在Android N的系统上,初次使用了Ninja的编译系统.对于Ninja,最初的印象是用在了Chromium open source code的编译中,在chromium的编译环境中,使用ninj ...
- 安装 R 包报错 clang: error: unsupported option '-fopenmp' 的解决方法
MacOS 上安装 R 包 install.packages("data.table") 后面提示是否安装需要编译的版本: Do you want to install from ...