木村 様 いつもお世話になっております。
FileDownloadServiceを作成したんですが、サーバのリータンあと、 クライントがリータン値を受けるところでエラーになってしまいました。 そのFileDownloadServiceはgetFile(filename)を提供して ファイル名へのDataHandlerをクライントへ返します。 http://localhost:8080/axis/services/IFileDownloadService?method=getFile& in0=bf1942_weenie.mpeg IEで下記のようにそれらしいものが表示・返されました。 ... <getFileReturn href="cid:3144DFE2E2CA459086792463EEC998EC" xsi:type="ns1:DataHandler" xmlns:ns1="FileDownloadService" /> ... サーバ(サービス)側: public class FileDownloadService { DataHandler datahandler; .... public DataHandler getFile(String filename){ .... FileDataSource source; try { source = new FileDataSource(filepath + filename); System.err.println("source=[" + source + "]"); <----(a) } catch (RuntimeException e) { System.err.println(e.toString()); return null; } datahandler = new DataHandler(source); System.err.println("datahandle=[" + datahandler + "]"); <----(b) return datahandler; } Tomcatの画面はエラーなくて [EMAIL PROTECTED] <----(a) [EMAIL PROTECTED] <----(b) が表示されて残っているのは return datahandler; だけです。 クライント側: public class FileDownloadServiceStub { ... public FileDownloadServiceStub() { try { qnhandler = new QName( "IFileDownloadService", "DataHandler" ); qngetimage = new QName( "IFileDownloadService", "getFile" ); service = new Service(); call = (Call)service.createCall(); ... } catch( Exception e ) { e.printStackTrace(); } } public DataHandler getFile( String filename ) throws RemoteException { System.out.println("FileServiceStub::getFile[" + filename + "]"); <------(1) handler = (DataHandler)call.invoke(new Object[] {filename}); System.out.println("FileServiceStub::getFile[" + filename + "] done"); <------(2) return handler; } } クライントの画面で(1)が表示されて(2)の前に、下記のエラーになってしまいま した。 サーバの(b)のreturnから handler =... の前までのエラーかな。 FileServiceStub::getFile[bf1942_weenie.mpeg] AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: org.xml.sax.SAXException: Deserializing parameter 'getFileReturn': could not find deserializer for type {FileDownloadService}DataHandler faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: Deseri alizing parameter 'getFileReturn': could not find deserializer for type {FileDo wnloadService}DataHandler at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:273) at org.apache.axis.encoding.DeserializationContext.startElement(Deserial izationContext.java:1031) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.ja va:165) at org.apache.axis.message.MessageElement.publishToHandler(MessageElemen t.java:1140) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:238) at org.apache.axis.message.RPCElement.getParams(RPCElement.java: 386) at org.apache.axis.client.Call.invoke(Call.java:2402) at org.apache.axis.client.Call.invoke(Call.java:2301) at org.apache.axis.client.Call.invoke(Call.java:1758) at networkrobot.logicserver.etcdata.FileDownloadServiceStub.getFile(File DownloadServiceStub.java:63) at networkrobot.logicserver.subLogic.MoviePlay.downloadEtcData(MoviePlay .java:223) at networkrobot.logicserver.subLogic.MoviePlay.startPlay(MoviePlay.java: 157) at networkrobot.logicserver.subLogic.MoviePlay.execute(MoviePlay.java:67 ) at networkrobot.logicserver.subLogic.ContentsAdapter.execute(ContentsAda pter.java:220) at networkrobot.logicserver.Polling.execEvent(LogicServer.java:415) at networkrobot.logicserver.Polling.run(LogicServer.java:99) {http://xml.apache.org/axis/}hostname:spike org.xml.sax.SAXException: Deserializing parameter 'getFileReturn': could not fi nd deserializer for type {FileDownloadService}DataHandler at org.apache.axis.AxisFault.makeFault(AxisFault.java:101) at org.apache.axis.client.Call.invoke(Call.java:2405) at org.apache.axis.client.Call.invoke(Call.java:2301) at org.apache.axis.client.Call.invoke(Call.java:1758) at networkrobot.logicserver.etcdata.FileDownloadServiceStub.getFile(File DownloadServiceStub.java:63) at networkrobot.logicserver.subLogic.MoviePlay.downloadEtcData(MoviePlay .java:223) at networkrobot.logicserver.subLogic.MoviePlay.startPlay(MoviePlay.java: 157) at networkrobot.logicserver.subLogic.MoviePlay.execute(MoviePlay.java:67 ) at networkrobot.logicserver.subLogic.ContentsAdapter.execute(ContentsAda pter.java:220) at networkrobot.logicserver.Polling.execEvent(LogicServer.java:415) at networkrobot.logicserver.Polling.run(LogicServer.java:99) Caused by: org.xml.sax.SAXException: Deserializing parameter 'getFileReturn': c ould not find deserializer for type {FileDownloadService}DataHandler at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:273) at org.apache.axis.encoding.DeserializationContext.startElement(Deserial izationContext.java:1031) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.ja va:165) at org.apache.axis.message.MessageElement.publishToHandler(MessageElemen t.java:1140) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:238) at org.apache.axis.message.RPCElement.getParams(RPCElement.java: 386) at org.apache.axis.client.Call.invoke(Call.java:2402) ... 9 more 長くなってすみませんが、なにか解決するヒントをお願いします。 宜しくお願い申し上げます。 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]