我需要在我的android客户端和我的spring + JSF服务器之间建立连接 我需要从我的Android客户端发送文件并在服务器端接收它们 为此,我试图将文件直接发送到包含此函数的bean
@Component
@Scope("request")
@Path("/file")
public class RestWebService {
@POST
@Path("/upload")
@Consumes(javax.ws.rs.core.MediaType.TEXT_PLAIN)
public String uploadFile(
@FormParam("file") InputStream uploadedInputStream,
@FormParam("file") FormDataContentDisposition fileDetail,
@QueryParam("inputFileName") String inputFileName) throws FileNotFoundException{
System.out.println("start upload");
System.out.println(fileDetail.getFileName());
return "";
}
我将这行添加到我的web.xml中:
<display-name>Restful Web Application</display-name>
<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet- class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.test.WebService</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
但似乎JSF阻止了联系 我想知道是否有可能以这种方式继续,或者我必须改变这个解决方案,在这种情况下如何??
答案 0 :(得分:1)
JSF没有阻止REST访问URL。您需要正确配置。 你可以看一下在wildfly下运行的JSF / REST项目,你可以在JSF应用程序中通过url访问REST,请看看 https://github.com/armdev/wildfly-jsf2.3-web