jax-ws soap-webservice是否可以输出json格式而不是xml格式
@Component
@WebService
public class HRSService {
@WebMethod
public String test(String value) {
return value; //returned as XML. JSON possible?
}
}发布于 2015-09-05 09:39:58
显然,按照https://jax-ws-commons.java.net/json/ (Archive version)上的说明进行操作是可能的
总结:
@BindingType(JSONBindingID.JSON_BINDING)
public class MyService {
public Book get(@WebParam(name="id") int id) {
Book b = new Book();
b.id = id;
return b;
}
public static final class Book {
public int id = 1;
public String title = "Java";
}
}你只需要在你的WEB-INF/lib中使用jaxws-json.jar就可以了。
我希望它能有所帮助!
发布于 2016-04-14 12:32:39
已经很晚了。我最近又回到了Java编程,但对于那些将来要访问这个页面的人来说。JAXWS metro文档中的示例只能在javascript中使用。我将以下内容与JSONObject结合使用:
@WebServiceProvider
@ServiceMode(value = Service.Mode.MESSAGE)
@BindingType(value=HTTPBinding.HTTP_BINDING)然后实现Provider(DataSource),如示例所示:
public class clazz implements Provider<DataSource>
{ ...
@Override
public DataSource invoke(DataSource arg)
{
...
String emsg = "Request Parameter Error.";
String sret = create_error_response(emsg);
return getDataSource(sret);
}
}
private DataSource getDataSource(String sret)
{
ByteArrayDataSource ds = new ByteArrayDataSource(sret.getBytes(), "application/json");
return ds;
}
public String create_error_response(String msg)
{
JSONObject json = new JSONObject();
json.put("success", new Boolean(false));
json.put("message", msg);
return json.toString();
}https://stackoverflow.com/questions/25660582
复制相似问题