2016-07-08 21 views
0

在SOAPUI工具中,響應任何數據庫步驟,響應包含tableName.column。如何在SOAPUI中的JDBC響應中刪除表名

請參考下圖。

screenshot of text

怎樣才能把響應中的tablename屬性。 我的意思是問,有沒有SOAPUI任何設置或有任何屬性文件,我需要更新......

+0

您可以使用groovy腳本替換字符串。 – Rao

+0

這是數據的內部XML表示。沒有切換來修改此行爲。這是設計的:如果你在聲明中加入兩個表,那麼XML表示就不清楚你的數據來自哪個表。 – SiKing

+1

另外:最好將文本發佈爲文本,而不是將其轉換爲圖像。 – SiKing

回答

1

這並不取決於設置SOAPUI,它取決於DB驅動程序。

我按照從GitHub上的SOAPUI代碼,我終於發現,內部JDBCTestSteps基礎上,後續的代碼片段從響應構建XML節點名稱:

... 
public static Document addResultSetXmlPart(Element resultsElement, ResultSet rs, Document xmlDocumentResult) 
      throws SQLException { 
ResultSetMetaData rsmd = rs.getMetaData(); 
... 
... 
String columnName = ""; 
if (!StringUtils.isNullOrEmpty(rsmd.getTableName(ii))) { 
    columnName += (rsmd.getTableName(ii)).toUpperCase() + "."; 
} 
columnName += (rsmd.getColumnName(ii)).toUpperCase(); 
String value = rs.getString(ii); 
Element node = xmlDocumentResult.createElement(StringUtils.createXmlName(columnName)); 
... 

(你可以看到整個方法addResultSetXmlPart method form XMLUtils class here

因此,您可以看到XML上的節點名稱取決於ResultSetMetaDatagetTableNamegetColumnName方法。這個類是一個接口,這些方法的實現取決於特定的DB驅動程序版本。

因此,要與您的客戶端具有相同的行爲,只需檢查兩者是否具有相同的數據庫驅動程序SOAPUI_HOME\bin\ext。備註:一旦您或您的客戶更改重新啓動SOAPUI爲了加載新的。

希望這會有所幫助,

+0

通過使用「postgresql-9.3-1100-jdbc4」jar文件與表名稱一起顯示的JDBC響應 – HemaSundar

相關問題