2012-06-22 47 views
1

我正在從Java(JaxB)客戶端連接到.NET WebService。我試圖在其中一個對象的字段中傳遞類似SQL的字符串。該對象的其他領域似乎串行很好。出於某種原因,此SQL查詢會導致服務器引發異常。SOAP無效字符

這裏是因爲它是通過網絡發送的有效負載的內容...

uniquedata.name = '2012' OR提取物(從(uniquedata.createdDate劃時代 - TO_TIMESTAMP( '2012', 'YYYY/MM/DD HH/MI/SS'))< 24 * 60 * 60 OR提取(從(uniquedata.modifiedDate - to_timestamp('2012','YYYY/MM/DD HH/MI/SS') < 24 * 60 * 60

有趣的是<轉義序列的存在。

javax.xml.ws.soap.SOAPFaultException:服務器無法讀取請求。 ---> XML文檔中存在錯誤(1,1073)。 --->過濾器字符串包含無效字符: uniquedata.name ='2012'或提取(從(uniquedata.createdDate - to_timestamp('2012','YYYY/MM/DD HH/MI/SS'))epoch)< 24 * 60 * 60 OR提取物(從曆元(uniquedata.modifiedDate - TO_TIMESTAMP( '2012', 'YYYY/MM/DD HH/MI/SS'))< 24 * 60 * 60

的異常顯示但我認爲這些都是罪魁禍首,所以我試圖將(1,1073)索引與原始請求關聯起來,但它與原始數據包沒有任何相似之處,我甚至嘗試過忽略<標誌,刪除xml標題,肥皂信封等,但沒有運氣。

任何想法接下來要嘗試什麼?

回答

1

原來,查詢被正確發送,並且它是引發錯誤的服務中的代碼。