Hello ,

I get the below messages when streaming PDF files, I want to remove the
logging, please suggest.



Nov 19, 2008 7:21:06 PM
org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose

INFO: Outbound Message

---------------------------

Encoding:

Headers: {}

Messages:
Payload: %PDF-1.4

...pdf junk characters.





Also, I wrote a provider(attached) for pdf's where it gets the String as a
path, and dumps the contents of the pdf at the path,see below the code, do
you see any problem with this provider as
I get below exception

Error serializing the response, please check the server logs, response class
: String.

--------------------------------------

Nov 19, 2008 7:28:14 PM org.apache.cxf.phase.PhaseInterceptorChain
doIntercept

INFO: Interceptor has thrown exception, unwinding now

org.apache.cxf.interceptor.Fault: Could not send Message.

at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(
*MessageSenderInterceptor.java:64*)

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(*
PhaseInterceptorChain.java:221*)

at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(*
OutgoingChainInterceptor.java:74*)

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(*
PhaseInterceptorChain.java:221*)

at org.apache.cxf.transport.ChainInitiationObserver.onMessage(*
ChainInitiationObserver.java:78*)

at org.apache.cxf.transport.servlet.ServletDestination.invoke(*
ServletDestination.java:92*)

at org.apache.cxf.transport.servlet.ServletController.invokeDestination(*
ServletController.java:279*)

at org.apache.cxf.transport.servlet.ServletController.invoke(*
ServletController.java:123*)

at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(*
AbstractCXFServlet.java:174*)

at org.apache.cxf.transport.servlet.AbstractCXFServlet.doGet(*
AbstractCXFServlet.java:156*)

at javax.servlet.http.HttpServlet.service(*HttpServlet.java:617*)

at javax.servlet.http.HttpServlet.service(*HttpServlet.java:717*)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(*
ApplicationFilterChain.java:290*)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(*
ApplicationFilterChain.java:206*)

at org.apache.catalina.core.StandardWrapperValve.invoke(*
StandardWrapperValve.java:233*)

at org.apache.catalina.core.StandardContextValve.invoke(*
StandardContextValve.java:191*)

at org.apache.catalina.core.StandardHostValve.invoke(*
StandardHostValve.java:128*)

at org.apache.catalina.valves.ErrorReportValve.invoke(*
ErrorReportValve.java:102*)

at org.apache.catalina.core.StandardEngineValve.invoke(*
StandardEngineValve.java:109*)

at org.apache.catalina.connector.CoyoteAdapter.service(*
CoyoteAdapter.java:286*)

at org.apache.coyote.http11.Http11Processor.process(*
Http11Processor.java:845*)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(*
Http11Protocol.java:583*)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(*JIoEndpoint.java:447*)

at java.lang.Thread.run(Unknown Source)

Caused by: *ClientAbortException*: *java.net.SocketException*: Connection
reset by peer: socket write error

at org.apache.catalina.connector.OutputBuffer.realWriteBytes(*
OutputBuffer.java:358*)

at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(*ByteChunk.java:434*)

at org.apache.catalina.connector.OutputBuffer.doFlush(*OutputBuffer.java:309
*)

at org.apache.catalina.connector.OutputBuffer.close(*OutputBuffer.java:273*)

at org.apache.catalina.connector.CoyoteOutputStream.close(*
CoyoteOutputStream.java:104*)

at
org.apache.cxf.transport.http.AbstractHTTPDestination$WrappedOutputStream.close(
*AbstractHTTPDestination.java:517*)

at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(*
CacheAndWriteOutputStream.java:47*)

at org.apache.cxf.io.CachedOutputStream.close(*CachedOutputStream.java:159*)

at org.apache.cxf.transport.AbstractConduit.close(*AbstractConduit.java:66*)

at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(
*MessageSenderInterceptor.java:62*)

... 23 more

Caused by: *java.net.SocketException*: Connection reset by peer: socket
write error

at java.net.SocketOutputStream.socketWrite0(*Native Method*)

at java.net.SocketOutputStream.socketWrite(Unknown Source)

at java.net.SocketOutputStream.write(Unknown Source)

at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(*
InternalOutputBuffer.java:740*)

at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(*ByteChunk.java:434*)

at org.apache.tomcat.util.buf.ByteChunk.append(*ByteChunk.java:349*)

at
org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(
*InternalOutputBuffer.java:764*)

at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(*
ChunkedOutputFilter.java:124*)

at org.apache.coyote.http11.InternalOutputBuffer.doWrite(*
InternalOutputBuffer.java:573*)

at org.apache.coyote.Response.doWrite(*Response.java:560*)

at org.apache.catalina.connector.OutputBuffer.realWriteBytes(*
OutputBuffer.java:353*)

... 32 more

Nov 19, 2008 7:28:14 PM org.apache.catalina.core.StandardWrapperValve invoke

SEVERE: Servlet.service() for servlet CXFServlet threw exception

java.lang.NoClassDefFoundError

at org.apache.cxf.interceptor.StaxOutInterceptor.getXMLOutputFactory(*
StaxOutInterceptor.java:143*)

at org.apache.cxf.interceptor.StaxOutInterceptor.handleMessage(*
StaxOutInterceptor.java:67*)

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(*
PhaseInterceptorChain.java:221*)

at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(
*AbstractFaultChainInitiatorObserver.java:96*)

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(*
PhaseInterceptorChain.java:262*)

at org.apache.cxf.interceptor.OutgoingChainInterceptor.handleMessage(*
OutgoingChainInterceptor.java:74*)

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(*
PhaseInterceptorChain.java:221*)

at org.apache.cxf.transport.ChainInitiationObserver.onMessage(*
ChainInitiationObserver.java:78*)

at org.apache.cxf.transport.servlet.ServletDestination.invoke(*
ServletDestination.java:92*)

at org.apache.cxf.transport.servlet.ServletController.invokeDestination(*
ServletController.java:279*)

at org.apache.cxf.transport.servlet.ServletController.invoke(*
ServletController.java:123*)

at org.apache.cxf.transport.servlet.AbstractCXFServlet.invoke(*
AbstractCXFServlet.java:174*)

at org.apache.cxf.transport.servlet.AbstractCXFServlet.doGet(*
AbstractCXFServlet.java:156*)

at javax.servlet.http.HttpServlet.service(*HttpServlet.java:617*)

at javax.servlet.http.HttpServlet.service(*HttpServlet.java:717*)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(*
ApplicationFilterChain.java:290*)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(*
ApplicationFilterChain.java:206*)

at org.apache.catalina.core.StandardWrapperValve.invoke(*
StandardWrapperValve.java:233*)

at org.apache.catalina.core.StandardContextValve.invoke(*
StandardContextValve.java:191*)

at org.apache.catalina.core.StandardHostValve.invoke(*
StandardHostValve.java:128*)

at org.apache.catalina.valves.ErrorReportValve.invoke(*
ErrorReportValve.java:102*)

at org.apache.catalina.core.StandardEngineValve.invoke(*
StandardEngineValve.java:109*)

at org.apache.catalina.connector.CoyoteAdapter.service(*
CoyoteAdapter.java:286*)

at org.apache.coyote.http11.Http11Processor.process(*
Http11Processor.java:845*)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(*
Http11Protocol.java:583*)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(*JIoEndpoint.java:447*)

at java.lang.Thread.run(Unknown Source)
@Provider 

@ProduceMime( "application/pdf" ) 

public class PDFProvider 

implements MessageBodyWriter<String> 

{ 


public long getSize( String l ) 

{ 

File f = new File(l); 

//l is actually the path of the PDF

return f.exists() ? f.length() : 0; 

} 


public void writeTo( String li, MediaType mt, MultivaluedMap<String, Object> 
headers, OutputStream os ) 

throws IOException 

{ 

File f = new File(li); 

if( !f.exists() || f==null ) 

{ 

os.write( "<?xml version=\"1.0\" encoding=\"UTF-8\"?><info type=\"error\">Error 
in rendering PDF file</info>".getBytes() ); 

return; 

} 


java.io.FileInputStream in = new java.io.FileInputStream(f);

int size = 0;

byte[] buffer = new byte[8192];

while( (size = in.read(buffer, 0, buffer.length)) != -1)

{

os.write(buffer, 0, size);

}

}

Reply via email to