`
lxcaoxin
  • 浏览: 124917 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

调用webservice出现javax.xml.bind.UnmarshalException解决办法

阅读更多
最近在做Android使用ksoap2包调用Webservice,自己写了Webservice发布在Jboss上做测试时,
出现javax.xml.bind.UnmarshalException,异常内容为
Caused by: javax.xml.bind.UnmarshalException: unexpected element (uri:"http://apj.vote.webservice.com", local:"arg0"). Expected elements are <{}arg0>



原因:服务器端的Webservice的接口方法的参数没有设置好参数名称和命名空间

解决办法,使用@WebParam注解添加参数名称和命名空间
例如:
接口代码:
package com.apj.webservice;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;


@WebService(targetNamespace = "http://apj.vote.com", name = "VoteWebService", serviceName = "VoteWebService")
public interface VoteWebService {
	@WebResult(name="return",targetNamespace="http://apj.vote.com")
	@WebMethod
	public String vote(@WebParam(name = "teamid",targetNamespace="http://apj.vote.com") long teamid);

}


实现类
package com.apj.webservice.impl;

import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import org.jboss.logging.Logger;

import com.apj.model.Team;
import com.apj.webservice.VoteWebService;

@WebService(targetNamespace = "http://apj.vote.com", name = "VoteWebService", serviceName = "VoteWebService")
@Stateless
@Remote(VoteWebService.class)
public class VoteWebServiceImpl implements VoteWebService {

	@WebResult(name="return",targetNamespace="http://apj.vote.com")
	@WebMethod
	public String vote(@WebParam(name = "teamid",targetNamespace="http://apj.vote.com") long teamid) {

		System.out.println("team id ====" + teamid);
	
		return teamid + "";

	}

}

分享到:
评论
5 楼 fanyin158 2015-11-30  
虽然楼主你长的不好看... 但确实艾斯你了.......
4 楼 chuqingxiao 2015-11-19  
楼主,怎么解决的???加上这两个注解也还是不行。[/b][/b]
3 楼 lsj8080 2014-07-22  
我的好像也不行
2 楼 shairyee 2013-09-02  
太感谢搂住了,是正解。  
1 楼 yun342173024 2012-07-10  
加上targetnamespace和WebParam还是抛出异常

相关推荐

Global site tag (gtag.js) - Google Analytics