WebserviceÖзþÎñÆ÷¶ËÖ±½Ó²Ù×÷SOAPµÄXMLÄÚÈÝ
ͨ³£Çé¿öÏÂ,ÔÚJAX-WS2.0ÖÐÊÇÀûÓÃJAXB½«´«ÈëµÄSOAP XMLÏûϢת»»³ÉJAVAµÄobject,È»ºóµ÷ÓöÔÓ¦porttypeµÄJAVAÀàµÄÏàÓ¦µÄ·½·¨,ÔÚÍê³Éµ÷Óúó,ÔÙͨ¹ýJAXB½«·µ»Ø²ÎÊýת³ÉSOAP XML.
JAX-WS»¹ÌṩÁËÁíÒ»ÖÖ·½·¨,ÈÃÎÒÃÇ¿ÉÒÔÖ±½Ó²Ù×÷SOAP XML,ͨ¹ýÈöÔÓ¦porttypeµÄJAVAÀàʵÏÖ Provider<Source>½Ó¿Ú,µ±·þÎñÆ÷¶ËÊÕµ½SOAPÏûÏ¢ºó,»áµ÷Óà Source invoke(Source payload) ·½·¨,Èç¹ûÐèÒªÖ±½Ó¶ÔXML½øÐвÙ×÷,²»ÏëÀûÓÃJAXBÀ´×ö¶ÔÏóºÍXMLµÄת»»,¿ÉÒÔÓÃÕâÖÖ»úÖÆ.
Àý×Ó:(ÓÃCXF·¢²¼web service)²ÎÕÕhttp://blog.csdn.net/kkdelta/archive/2009/03/12/3984312.aspxÁ˽âCXF·¢²¼µÄ²½Öè.
1,JAVA Àà
package com.cxfwsp.test;
import java.io.StringReader;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import javax.xml.ws.Provider;
import javax.xml.ws.Service;
import javax.xml.ws.ServiceMode;
import javax.xml.ws.WebServiceProvider;
@WebServiceProvider(serviceName = "TestWSProviderService", portName = "TestWSProviderPort", targetNamespace = "http://test.cxfwsp.com/", wsdlLocation = "wsdl/prjCXFWSP.wsdl")
@ServiceMode(Service.Mode.PAYLOAD)
public class TestWSProvider implements Provider<Source> {
public Source invoke(Source payload) {
//System.out.println(payload);
//DOMSource domsrc = (DOMSource)payload;
try{
Transformer tFormer = TransformerFactory.newInstance().newTransformer();
Result result = new StreamResult(System.out);
tFormer.transform(payload, r
Ïà¹ØÎĵµ£º
Class.xml
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="class.css"?>
<bookdetail>
<book class="A">
<author>²ÜÑ©ÇÛ</author>
<title>ºìÂ¥ÃÎ</title>
<price>60.00</price>
</book>
<book class="A"& ......
ÕâÊÇһƪ½²½âÈçºÎʹÓÃXMLʵÏÖFlashÓëͨÐŵÄÈëÃż¶ÊµÀý½Ì³Ì¡£Í¨¹ý±¾ÀýµÄѧϰ£¬ÎÒÃǽ«Á˽âʹÓÃXML¿ª·¢Flash RIAsµÄ»ù±¾Á÷³Ì¡£
´ÓFlash Player 5¿ªÊ¼£¬¾Í¿ÉÒÔʹÓÃXML¶ÔÏóÀ´ÊµÏÖFlashÓëºǫ́ͨÐÅ¡£Flashä¯ÀÀÆ÷ÓëXMLÊý¾ÝÖ®¼äµÄÖ±½Ó½øÐÐÊý¾Ý½»»»£¬²¢ÇÒͬLoadVarsº¯ÊýÒ»Ñù£¬¶¼ÊÇÒÔ×Ö·û´®ÐÎʽ´«µÝµÄ¡£ºǫ́ÓïÑÔ×÷ΪXMLÊý¾ÝºÍÊý¾Ý¿â ......
xsdÓëxmlºÍÀà(class)¶ÔÏóÖ®¼äµÄ»¥Ïàת»»
.
µÚÒ»£ºÍ¨¹ýÏÖÓеÄÒѾдºÃµÄxsdÀ´Éú³Éclass£¨.cs£©Îļþ¡£
ÔÚÄúVisual StudioµÄ°²×°Ä¿Â¼ÏµÄSDKv2.0BinÖÐÓиöÓ¦ÓóÌÐòxsd.exe£¨Í¨¹ýÕâ¸öÓ¦ÓóÌÐò¿ÉÒÔʹÓÃxsdÀ´´´½¨ÀàÎļþ£©¡£
¾ßÌå²Ù×÷£ºÍ¨¹ý´ò¿ªVisual Studio ÃüÁîÌáʾ£¬¿ÉÒÔÊäÈëxsdÖ¸ÁîÀ´²é¿´Ò»Ð©¾ßÌåµÄ²Ù×÷Ö¸ÁîµÄÓô¦£¬È»ºó ......
XMLÎļþÓÉÓÚÆäÀ©Õ¹ÐÔÓë¼æÈÝÐÔµÄÓŵ㣬±»¹ã·ºÓÃ×÷Èí¼þºÍϵͳµÄÅäÖÃÎļþ¡£ÕâÀï¼òÒª½éÉÜÒ»ÏÂQTÏÂÈçºÎÀ´½âÎöXMLÎļþ¡£
Ô´´úÂ룺
xml_reader.h
#ifndef XML_READER_H
#define XML_READER_H
#include <QtCore>
//#include <QtGui>
class xml_reader : public QXmlStreamReader
{
//Q_OBJECT
public:
......
MSDNÉϵ͍Ò壺
XML ÐòÁл¯½«¶ÔÏóµÄ¹«¹²×ֶκÍÊôÐÔ»òÕß·½·¨µÄ²ÎÊýºÍ·µ»ØÖµ×ª»»£¨ÐòÁл¯£©Îª·ûºÏÌØ¶¨ XML ¼Ü¹¹¶¨ÒåÓïÑÔ (XSD) ÎĵµµÄ XML Á÷¡£XML ÐòÁл¯Éú³ÉÇ¿ÀàÐ͵ÄÀ࣬²¢Îª´æ´¢»ò´«ÊäÄ¿µÄ½«Æä¹«¹²ÊôÐÔºÍ×Ö¶Îת»»ÎªÐòÁиñʽ£¨ÔÚ´ËÇé¿öÏÂΪ XML)¼òµ¥µÄ˵¾ÍÊǽ«Ò»¸ö¶ÔÏóת»»³ÉXMLÁ÷»òÊÇÎļþµÄ¹ý³Ì¡£
×¢ÒâÊÂÏҪÐòÁл¯µÄÀ ......