(Ò») ÓйؽéÉܶþ½øÖÆÊý¾ÝÔÚWSÖд«ËÍ,¿ÉÒÔÓÐÁ½ÖÖ·½Ê½:
1 °ÑÊý¾ÝÖ±½Ó×÷ΪxmlÎĵµÖÐÄ³ÔªËØµÄ×Ö½ÚÁ÷,×÷ΪXML½âÎöÆ÷Òª½âÎöµÄÒ»²¿·Ö,ºÜÃ÷ÏÔÕâÖÖ·½Ê½±È½ÏµÍЧ.
2 ¶þ½øÖÆÊý¾Ý×÷Ϊ¸½¼þ,×÷Ϊ´øÍâ(out of band)Êý¾ÝËæÍ¬XML·¢ËÍ, Ìá¸ßÁËЧÂÊ.ĿǰÕâÀà´¦ÀíÓм¸¸ö¹æ·¶:DIME(Ö±½Ó Internet ÏûÏ¢·â×°),Õâ¸öÊý¾Ý°ü×°¸ñʽ¼°Æä´¦Àí,Ö»ÓÐ΢ÈíÔÚÖ§³Ö.
http://www.microsoft.com/china/msdn/archives/library/dnwebsrv/html/DIMEWSAttch.asp¡¡¡¡
http://www.zdnet.com.cn/developer/code/story/0,3800066897,39358789,00.htm
MTOM(SOAP ÏûÏ¢´«ÊäÓÅ»¯»úÖÆ)ºÍXOP(¶þ½øÖÆ XML ÓÅ»¯·â×°);ÔÚSun¹æ·¶JAX-RPC1.1ÖÐ,ÒªÇóʹÓÃSwA(SOAP with Attachments) Ö§³Ö¸½¼þ,Ϊ´ËSunÌṩÁËSOAP with Attachments API for Java,´ø¸½¼þµÄSoapAPI(SAAJ),ÔçÆÚËüºÍjaxmºÏÔÚÒ»ÆðµÄ,ÏÖÔÚÒѾ¶ÀÁ¢¿ªÀ´ÐγÉÁËsoap°ü,Õâ¸öAPIרÃÅÓÃÀ´´¦ÀíSoap¸½¼þµÄËùÓвÙ×÷.JAXRPC 1.1 ¹æ·¶¶¨ÒåÁËMIMEÀàÐ͵½JavaÀàÐ͵ÄÓ°Éä.
mime type
java type
image/gif
java.awt.image
image/jpeg
java.awt.image
text/plain
java.lang.string
multipart/*
javax.mail.internet.mimemultipart
text/xml or application/xml
javax.xml.transform.sourceJAXRPC
1.1 ¹æ·¶¶¨ÒåÁËÕâÖÖÇé¿ö:µ±°ó¶¨µ½ÉϱíÖÐûÓж¨ÒåµÄÀàÐÍÓ°Éä»òÕßÊǰ󶨵½±¸ÓÃMIMEÀàÐÍʱ,ËüÓ¦¸ÃÓ°Éäµ½ javax.activation.DataHandler.wscompile¹¤¾ßÖеÄÑ¡Ïî-f:ÓÃÓÚÀàÐÍÓ°ÉäµÄÏî:datahandleronly,¸ÃÏîÖ¸Ã÷×ÜÊǰѸ½¼þÓ°Éäµ½DataHandlerÀàÐÍ.
(¶þ) ±àдÀý×ÓÓ¦ÓÃÎļþÇåµ¥SEI½Ó¿ÚÀàIImage.java,ʵÏÖSEI½Ó¿ÚµÄÀàIIMageImpl.java,ÃèÊöÎļþÐÅÏ¢µÄÖµÀàÐÍÀàFileInfo.java,WebÓ¦Óò¿ÊðÃèÊöÎļþweb.xml,WS·¢²¼ÅäÖÃÎļþjaxrpc-ri.xml,WS±àÒëÅäÖÃÎļþconfig-interface.xml,¹¹½¨¿Í»§¶Ë×®µÄconfig-wsdl.xml,¹¹½¨Îļþbuild.xml¿Í»§¶Ë²âÊÔÀà:MainBrowser.java,ImageListProvider.javaºÍImageLabelProvider.java,²âÊÔʹÓÃÁËSWTºÍJFace,ÇëÊʵ±ÅäÖÃÄãµÄEclipse»·¾³,ÒýÈëÊʵ±µÄ¿â.Õâ¸öÀý×ÓÊÇ´ÓSEI¿ªÊ¼,°ó¶¨ÑùʽΪ RPC.IImage.javaÇåµ¥:
package com.bin;import java.rmi.Remote;import java.rmi.RemoteException;import javax.activation.*;import javax.xml.soap.*;import java.util.*;public interface IImage extends Remote {public DataHandler fetchImg(String sn) throws RemoteException;public ArrayList fetchImgs(String[] sn) throws RemoteException;publ