0

我有以下可以正常工作的 Web 服务。我需要添加上传文件以及序列化为 JSON 的 TrackBean 实例的功能。

我发现了很多只是文件上传的例子,但没有一个会接受 json 和同一篇文章中的文件。

一次做这一切是不好的技术吗?首先上传文件,从服务器获取某种令牌作为响应,然后在第二个帖子中发送 json,引用来自帖子 #1 的令牌,这样服务器就会知道与哪个文件关联,这是一个更好的做法吗?传入的 JAXB_TrackBean 实例。

在此先感谢您的帮助!

网络服务块:

@POST
@Path( "/post" )
@Consumes( MediaType.APPLICATION_JSON )
public Response createTrackInJSON( JAXB_TrackBean track )
{

    String result = "TrackBean saved : " + track.getText() ;
    return Response.status( 201 ).entity( result ).build();

}

JAXB_TrackBean:

@XmlRootElement( name = "track" )
@XmlType( propOrder = { "id", "text" } )
public class JAXB_FtTextBean
{
     private long id = 0;
     private String text;

        // getter/setters omitted for brevity 

 }
4

1 回答 1

0

当我必须在 web 服务请求中包含我的文件时,我通常会做的是我接受文件内容作为字节数组或 base 64 编码内容。在这种方式下,文件只是调用的另一个参数。不是最有效的方法,但提供了结果。值得一提的是,我尝试仅使用 SOAP WS 来了解这种方法,但我看不出它不应该与 REST+JSON 一起使用的原因。

于 2013-02-09T07:19:50.597 回答