CXF+Tomcat发布WebService问题
本人是个新手,最近在学习WebService 想利用CXF+Tomcat+eclipse发布自己的报务。但遇到了下面错误,请高手指点迷津:
接口定义如下:
@WebService
public interface SendMessageIntf {
public void sendMessage(@WebParam(name = "to")String to,
@WebParam(name = "message")String message,
@WebParam(name = "serverIP")String serverIP)
throws ParseException,InvalidArgumentException, SipException;
}
实现类如下:
public class SendSipMessageImpl implements SipSendMessageIntf{public SipSendSipMessage(int x)
{
int y=0;
y=x+1;
}
@Override
public void sendMessage(String to, String message, String serverIP)
throws ParseException, InvalidArgumentException, SipException {
}
}
问题如下:在实现类SendSipMessageImpl中如果带有参构造函数public SipSendSipMessage(int x)
{
int y=0;
y=x+1;
}
服务就不能正确发布,如果上面的有参构造函数改为无参构造函数public SipSendSipMessage()
{
int y=0;
y=y+1;
}
,服务就能正常发布。
请问这是为什么?谢谢!!!!!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
也谢谢你~你们两个人的回答都能帮我解决这个问题~
这个是java基础吧...当你只有有惨构造的时候,就没有了无惨构造,当反射的时候就麻烦点了...so保留无惨构造.
感觉把CXF和spring一起用会方便很多。
CXF的类初始化很多情况下都是用的反射,而反射很多情况也是调用默认的,而这里你定义了一个带参数的构造方法,那么默认的那个不带参数的肯定就不存在了。那么反射也就无从调用了。你可以重载构造函数,定义两个就OK了。