1) As I see in the source code of ManagedMemoryDataSource, it does not use at all provided InputStream is readall parameter == false. Is it bug? 2) I really does not understand what means maxCached parameter :( 3) I try to use my own DataSource for sending binary data as attachment. I have wrote such class: ------------- /* * Created by IntelliJ IDEA. * User: pavelb * Date: 16/06/2002 * Time: 14:41:16 * To change template for new class use * Code Style | Class Templates options (Tools | IDE Options). */ package samples.test4;
import javax.activation.*; import java.io.*; public class BinDataSource implements DataSource { private String _contentType; private String _name; private byte _data[]; private InputStream _is; private OutputStream _os; public BinDataSource(String contentType, String name, byte[] data) { _contentType = contentType; _name = name; _data = data; _is= new ByteArrayInputStream(_data); _os = new ByteArrayOutputStream(); } public InputStream getInputStream() throws IOException {return _is;} public OutputStream getOutputStream() throws IOException {return _os;} public String getContentType() {return _contentType;} public String getName() {return _name;} } ------------- But if I use it for constructing DataHandler and returning this DataHandler from service method, I receive exception : What I am doing wrong? - Exception: java.lang.NullPointerException at org.apache.axis.AxisFault.makeFault(AxisFault.java:116) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java: 267) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrateg y.java:71) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:154) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:121) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:288) at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:57 6) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:243) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:190) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve .java:246) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java: 2347) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:180) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatche rValve.java:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:170) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java: 468) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:564) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:174) at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline .java:566) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:472) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943) at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcesso r.java:1027) at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.ja va:1125) at java.lang.Thread.run(Thread.java:536) Caused by: java.lang.NullPointerException at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:89) at samples.test4.BinDataSource.<init>(BinDataSource.java:27) at samples.test4.AttTestSoapBindingImpl.getLog(AttTestSoapBindingImpl.ja va:52) at samples.test4.AttTestSoapBindingSkeleton.getLog(AttTestSoapBindingSke leton.java:60) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider .java:229) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java: 262) ... 37 more ------------------------------------------------------------------------ Bernshtam Pavel 053-398944 Certified Java 2 Programmer [EMAIL PROTECTED] http://www.mutek.com http://www.cs.bgu.ac.il/~barnshte