Tuesday, 1 April 2014

JAX-RS jersey 2.6 usign FormDataMultiPart throws exception

My server formula throws java.lang.IllegalStateException: Stream
already closedat
org.jvnet.mimepull.DataHead$ReadMultiStream.fetch(DataHead.java:232)at
org.jvnet.mimepull.DataHead$ReadMultiStream.read(DataHead.java:207)at
sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:264)at
sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:306)at
sun.nio.cs.StreamDecoder.read(StreamDecoder.java:158)Truncated. see record
record for finish stacktraceserver formula
@PUT@Consumes(MediaType.MULTIPART_FORM_DATA)public vacant
updateCI(FormDataMultiPart formParams){ FormDataBodyPart f =
formParams.getField("myfile");
handleInputStream(f.getValueAs(InputStream.class)); ..... private
vacant handleInputStream(InputStream is) { BufferedReader br = null;
StringBuilder sb = new StringBuilder(); String line; try { br
= new BufferedReader(new InputStreamReader(is)); while ((line =
br.readLine()) != null) { sb.append(line); } } locate
(IOException e) { e.printStackTrace(); } finally { if (br
!= null) { try { br.close(); } locate
(Exception e) { e.printStackTrace(); } }
} System.out.println("File Content");
System.out.println(sb);client formula final FileDataBodyPart
filePart = new FileDataBodyPart("myfile",
new File("C:\\testing.txt")) final FormDataMultiPart multipart =
new FormDataMultiPart().field("xml", "xmlstring");
multipart.bodyPart(filePart); Response response = target.request()
.put(Entity.entity(multipart, multipart.getMediaType()));I am
controlling jersey2.6, jersey-media-multipart 2.6, mimepull 1.9.4 (alse
attempted with 1.9.3)Servlet enclosing 2.5. JDK 1.6I have registerd in
ResourceConfig register(MultiPartFeature.class)Am we blank
something?

No comments:

Post a Comment