- 浏览: 60369 次
- 来自: ...
最新评论
-
map612:
拉出去斩了,这也太次了吧
构建xfire动态client -
zuowangxi:
插件 DTP STK 在哪里有下啊??
安装eclipse bpel designer -
caiway:
是地,找不到,郁闷。
BPEL Hello Word -
caiway:
这样不行吧,还要装一些插件吧。
“安装了以下插件的 Eclip ...
安装eclipse bpel designer -
phpbird:
谢谢搂主
jfreechart几个例子
在测试中,客户端请求一个xml文档(该文档存放于oracle数据库中,CLOB型),发现有时候能正常取到,有时候取到的数据以xml方式解析解析不了。
而我使用java客户端来请求该数据时,又能正常得到所有xml数据,和库中一样。为了彻底解决这个问题,写了一个测试的webservice接口。
- public class TestService {
- public TestService() {
- }
- public String getMessage() {
- return message;
- }
- }
这里的message其实是一个xml文档(由于不能贴在里,会丢信息原来信息无法阅读,所以在后面贴出)。
若message赋值为xml_a时,delphi客户端没有任何问题,能得到正常结果。xml_a内容如下:
- String xml_a =
- "<<!---->xml version=\"1.0\" encoding=\"UTF-8\"?>"
- + " <bCCH_BCH_Message>xxyyzz"
- + " <message>"
- + " <sfn_Prime>25sfn_Prime>"
- + " <payload>"
- + " <completeSIB_List>"
- + " <element>"
- + " <sib_Type>systemInformationBlockType7sib_Type>"
- + " <sib_Data_variable>01 80 80sib_Data_variable>"
- + " element>"
- + " <element>"
- + " <sib_Type>schedulingBlock1sib_Type>"
- + " <sib_Data_fixed>08 0D B0 1D 05 80 C4 4C 06 A0sib_Data_fixed>"
- + " element>"
- + " completeSIB_List>"
- + " payload>"
- + " message>"
- + " <xxyyzz1>xxyyzz123xxyyzz1>"
- + " <xxyyzz1>xxyyzz987xxyyzz1>"
- + " bCCH_BCH_Message>";
用tcptrace工具得到的返回结果,<写为<,>为>,&为&,这是由于是传输的数据就是以XML,在这个xml文档内再包含其他xml内容时需要转义。
当xml_b(比较长)赋值给message时,如下:
- String xml_b =
- "<!---->xml version=\"1.0\" encoding=\"UTF-8\"?>"
- + "<uL_DCCH_Message> "
- + "<xyz>"
- +" <a>1a>"
- +" <b>2b>"
- +" <c>3c>"
- +" <d>4d>"
- +" <e>5e>"
- +" <f>6f>"
- +" <g>7g>"
- +" <h>8h>"
- +" <i>9i>"
- +" <j>10j>"
- +" <k>11k>"
- +" <l>12l>"
- +" <m>13m>"
- +"xyz>"
- + " <message>"
- + " <rrcConnectionSetupComplete>"
- + " <rrc_TransactionIdentifier>0rrc_TransactionIdentifier>"
- + " <startList>"
- + " <element>"
- + " <cn_DomainIdentity>cs_domaincn_DomainIdentity>"
- + " <start_Value>00000000000000000100start_Value>"
- + " element>"
- + " <element>"
- + " <cn_DomainIdentity>ps_domaincn_DomainIdentity>"
- + " <start_Value>00000000000000010010start_Value>"
- + " element>"
- + " startList>"
- + " <ue_RadioAccessCapability>"
- + " <accessStratumReleaseIndicator>r99accessStratumReleaseIndicator>"
- + " <pdcp_Capability>"
- + " <losslessSRNS_RelocationSupport>falselosslessSRNS_RelocationSupport>"
- + " <supportForRfc2507>"
- + " <notSupported/>"
- + " supportForRfc2507>"
- + " pdcp_Capability>"
- + " <rlc_Capability>"
- + " <totalRLC_AM_BufferSize>kb150totalRLC_AM_BufferSize>"
- + " <maximumRLC_WindowSize>mws2047maximumRLC_WindowSize>"
- + " <maximumAM_EntityNumber>am6maximumAM_EntityNumber>"
- + " rlc_Capability>"
- + " <transportChannelCapability>"
- + " <dl_TransChCapability>"
- + " <maxNoBitsReceived>b6400maxNoBitsReceived>"
- + " <maxConvCodeBitsReceived>b6400maxConvCodeBitsReceived>"
- + " <turboDecodingSupport>"
- + " <supported>b6400supported>"
- + " turboDecodingSupport>"
- + " <maxSimultaneousTransChs>e8maxSimultaneousTransChs>"
- + " <maxSimultaneousCCTrCH_Count>1maxSimultaneousCCTrCH_Count>"
- + " <maxReceivedTransportBlocks>tb32maxReceivedTransportBlocks>"
- + " <maxNumberOfTFC>tfc128maxNumberOfTFC>"
- + " <maxNumberOfTF>tf64maxNumberOfTF>"
- + " dl_TransChCapability>"
- + " <ul_TransChCapability>"
- + " <maxNoBitsTransmitted>b6400maxNoBitsTransmitted>"
- + " <maxConvCodeBitsTransmitted>b6400maxConvCodeBitsTransmitted>"
- + " <turboEncodingSupport>"
- + " <supported>b6400supported>"
- + " turboEncodingSupport>"
- + " <maxSimultaneousTransChs>e8maxSimultaneousTransChs>"
- + " <modeSpecificInfo>"
- + " <fdd/>"
- + " modeSpecificInfo>"
- + " <maxTransmittedBlocks>tb32maxTransmittedBlocks>"
- + " <maxNumberOfTFC>tfc64maxNumberOfTFC>"
- + " <maxNumberOfTF>tf64maxNumberOfTF>"
- + " ul_TransChCapability>"
- + " transportChannelCapability>"
- + " <rf_Capability>"
- + " <fddRF_Capability>"
- + " <ue_PowerClass>3ue_PowerClass>"
- + " <txRxFrequencySeparation>mhz190txRxFrequencySeparation>"
- + " fddRF_Capability>"
- + " rf_Capability>"
- + " <physicalChannelCapability>"
- + " <fddPhysChCapability>"
- + " <downlinkPhysChCapability>"
- + " <maxNoDPCH_PDSCH_Codes>1maxNoDPCH_PDSCH_Codes>"
- + " <maxNoPhysChBitsReceived>b9600maxNoPhysChBitsReceived>"
- + " <supportForSF_512>falsesupportForSF_512>"
- + " <supportOfPDSCH>falsesupportOfPDSCH>"
- + " <simultaneousSCCPCH_DPCH_Reception>"
- + " <notSupported/>"
- + " simultaneousSCCPCH_DPCH_Reception>"
- + " downlinkPhysChCapability>"
- + " <uplinkPhysChCapability>"
- + " <maxNoDPDCH_BitsTransmitted>b9600maxNoDPDCH_BitsTransmitted>"
- + " <supportOfPCPCH>falsesupportOfPCPCH>"
- + " uplinkPhysChCapability>"
- + " fddPhysChCapability>"
- + " physicalChannelCapability>"
- + " <ue_MultiModeRAT_Capability>"
- + " <multiRAT_CapabilityList>"
- + " <supportOfGSM>falsesupportOfGSM>"
- + " <supportOfMulticarrier>falsesupportOfMulticarrier>"
- + " multiRAT_CapabilityList>"
- + " <multiModeCapability>fddmultiModeCapability>"
- + " ue_MultiModeRAT_Capability>"
- + " <securityCapability>"
- + " <cipheringAlgorithmCap>uea1 uea0cipheringAlgorithmCap>"
- + " <integrityProtectionAlgorithmCap>uia1integrityProtectionAlgorithmCap>"
- + " securityCapability>"
- + " <ue_positioning_Capability>"
- + " <standaloneLocMethodsSupported>falsestandaloneLocMethodsSupported>"
- + " <ue_BasedOTDOA_Supported>falseue_BasedOTDOA_Supported>"
- + " <networkAssistedGPS_Supported>noNetworkAssistedGPSnetworkAssistedGPS_Supported>"
- + " <supportForUE_GPS_TimingOfCellFrames>falsesupportForUE_GPS_TimingOfCellFrames>"
- + " <supportForIPDL>falsesupportForIPDL>"
- + " ue_positioning_Capability>"
- + " <measurementCapability>"
- + " <downlinkCompressedMode>"
- + " <fdd_Measurements>truefdd_Measurements>"
- + " downlinkCompressedMode>"
- + " <uplinkCompressedMode>"
- + " <fdd_Measurements>truefdd_Measurements>"
- + " uplinkCompressedMode>"
- + " measurementCapability>"
- + " ue_RadioAccessCapability>"
- + " rrcConnectionSetupComplete>"
- + " message>"
- + "uL_DCCH_Message>";
每次delphi客户端得到的结果解析不了。后用tcptrace工具截获请求和webservice返回的结果,得出结果是:实际的xml文档被夹在CDATAT标记中间,并没有(<写为<,>为>,&为&)转义。这也是delphi获得的结果,delphi对获得的串类型没有作任何处理,所以无法解析,除非去掉首尾CDATAT部分。而java的客户端可以得到的结果(去掉了CDATAT标记),即不包含CDATAT部分。问题出现在各自的SOAP引擎(根据SOAP规范生成请求应答)或消息的解析上(解析以xml传过来的数据)。
查了一下XML资料查到类似的一段:
若果XML文档中包含XML或HTML时,那么<和>和&分别写成<和>和&来转义;若包含的XML文档过长,把整个XML或HTML包在CDATA标记里,避免转义造成XML文档膨胀过大,尤其通过网络来传输的xml尤为重要。
再对照前面给出的2各XML文档,区别就是长度。若过长websphere就使用CDATA标记,若不太长则使用转义。到底多长才使用CDATA标记,没找到相关的说明。
但delphi却没有这么灵活,无法处理这种情况。我同事只好每次得到XML信息,先判断是否有CDATA标记,有就去头截尾。
发表评论
-
WAS6.1ND实现集群
2007-05-23 12:25 1927本来想帖在这里,但论坛贴图非常难用,只好作为附件分享。 -
xfire根据wsdl生成stub
2007-03-27 11:03 70061.command line生成client stub ... -
构建xfire动态client
2007-03-27 10:14 60251.创建一个java project,命名为XFireClie ... -
xfire start
2007-03-27 09:51 14431. 简介fromxfire. XFire is a next ... -
BPEL相关的一些名称解释
2007-02-16 16:50 11751. SOA: 2. WS: WSIF: SOAP: WSD ... -
BPEL Hello Word
2007-02-16 12:44 47031.机器至少1G内存(否则 ... -
安装eclipse bpel designer
2007-02-15 15:50 63021.下载eclipse3.2或以上版本。 2.运行eclips ... -
jfreechart几个例子
2007-01-09 17:05 1942在web.xml里添加一个servlet(btw:javaey ... -
java与面向对象二
2006-12-29 16:47 106211.类型作用 决定数据的内部标识方式; 决定取值范围; 决 ... -
java与面向对象一
2006-12-28 15:39 9261. 语言的形式化途径 语法 Syntax : 研究符号和 ... -
在websphere下,每次请求webservice的服务接口,都要创建一个实例
2006-11-01 15:52 1718webservice服务接口为: public class ...
相关推荐
做一个WebService,把前台和后台分离开,在ebService上得到数据是datatable,利用序列化转换成xml进行传输,再在客户端反序列化成datatable,在其中用到了反射,自定义属性等
各应用程序通过网络协议和规 定的一些标准数据格式(http,xml,soap)来访问webservice,通过webservice内部执 行得到所需结果。web service可以执行从简单的请求到复杂商务处理的任何功能。一旦部署以后,其他...
1042 利用WebService传送图片 611 22.4 文件监视 611 1043 如何监视文件的创建 611 1044 如何监视文件的改变 612 1045 如何监视文件的重命名 612 1046 如何监视文件的删除 613 22.5 C#高级应用 613 ...
Asp.net 利用OleDb的GetOLEDBSchemaTable方法得到数据库架构信息 用于 Visual Studio .Net 的 IBM DB2 开发外接程序 第2章 并发操作的一致性问题 (2) Using sqlite with .NET Visual Studio 2005 中的新 DataSet ...
一些常用验证函数 下拉-单选框选择 创建多级目录 删除数组中相同元素,只保留一个 判断路径是绝对目录还是相对目录 利用PHP搜索指定目录下指定的文件 加密解密 去掉指定的html标签 发送 trackback 数据包 ...
而以序列化的JavaScript对象为基础的JSON已经获得了广泛认可,它被认为能以远比XML更好的方式来序列化和传输简单数据结构,而且它更简洁。这对REST是一个极大贡献和补充。 当前的网络应用软件还违背了REST的“无...
33.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。 答:解1: select top 10 * from A where id not in (select top 30 id from A) 解2: select top 10 * ...
12.概述.NET里对 remoting 和 webservice 两项技术的理解和实际中的应用。 远程逻辑调用,remoing接口只能用在.net中 13.什么是code-behind技术 aspx and cs 14.概述三层结构体系 web/business/dataaccess 15.asp...
76 <br>0111 计算字符串中子字符串出现的次数 76 <br>0112 获得字符串中大写字母的个数 77 <br>0113 获得某字符在字符串中最后出现的位置 78 <br>0114 如何找出字符串中某一字符的所有位置 78...