package Restful.Demo.UploadFile;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
import org.glassfish.jersey.media.multipart.FormDataParam;
@Path("UploadFile")
public class Upload {
@GET
@Path("/upload1")
public String hello()
{
return "hello";
}
@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)// use to upload file
public Response UploadFile(@FormDataParam("file") InputStream inputfile,
@FormDataParam("file") FormDataContentDisposition filemetadetail)
{
int statuscode=200;
String fileLocation="e://Restful/"+filemetadetail.getFileName();
writeFile(inputfile, fileLocation);
String output="File uploaded to "+fileLocation;
return Response.status(statuscode).entity(output).build();
}
/*
* @param inputFile the file you want to upload
* @param fileLocation where file will be uploaded
* @return 0 - success
* @throws IOException
*/
private void writeFile(InputStream inputFile,String fileLocation)
{
OutputStream output=null;
try
{
output=new FileOutputStream(new File(fileLocation));
int read=0;
byte[] bytes=new byte[1024];
//read
while((read=inputFile.read(bytes))!=-1)
output.write(bytes, 0, read);
output.flush();
output.close();
}
catch(IOException ex)
{
ex.printStackTrace();
}
}
}
你好。 我是Restful webserver的彼得和新手。 以上是使用REST風格的API我uploadfile碼 - GlassFish服務器 ,而我試圖發佈戰爭GlassFish服務器無法部署maven寧靜上傳文件
java.lang.Exception的我得到這個錯誤澤西運行:部署是失敗=用名應用 [UploadFile]不部署在 oracle.eclipse.tools.glassfish.GlassFishServerBehaviour.publishDeployedDirectory(GlassFishServerBehaviour.java:603) 在 oracle.eclipse.tools.glassfish.GlassFishServerBehaviour.publishModuleForGlassFishV3(GlassFishServerBehaviour.java:830 ) at oracle.eclipse.tools.glassfish.GlassFishServerBehaviour.publishModule(G lassFishServerBehaviour.java:790) 在 org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publishModule(ServerBehaviourDelegate.java:1091) 在 org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publishModules( ServerBehaviourDelegate.java:1183) 在 org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish(ServerBehaviourDelegate.java:987) 在 org.eclipse.wst.server.core.model.ServerBehaviourDelegate.publish( ServerBehaviourDelegate.java:774) 在 org.eclipse.wst.server.core.internal.Server.publishImpl(Server.java:3182) 在 org.eclipse.wst.server.core.internal.Server $ PublishJob。運行(Server.jav一:355) 在org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)
誰能幫助我解決這個問題?
您提供的信息太少,無法爲您提供幫助。發佈'web.xml',你運行的是Jersey,Servlet,Glassfish,...的哪個版本。 – ujulu
我沒有使用servlet。只是一個帶有表單的HTML文件。 –
glassfish 4.1.1。 Jersery 2.26 –