我正在嘗試創建服務,該服務每次都會寫入輸入和輸出管道(xmldata),以便調用已安裝的服務之一。當其他服務被調用時,我的服務應該如何知道?是否有任何內置工具可以捕獲&輸出管道並保存到文件或任何其他來源?集成服務器 - 將管道保存到數據庫
2
A
回答
3
您可以使用webMethods的內置的服務之一WmPublic
包:
pub.flow:savePipelineToFile
注意它的不推薦使用‘savePipelineToFile’生產爲明顯的性能/資源的原因。當然,加載從文件的管線使用的:
pub.flow:restorePipelineFromFile
平時的工作流程在webMethods的調試是:
- 添加「savePipelineToFile」的步驟在 你流的第一條指令服務。
- 執行流服務或從某個客戶端執行將觸發流服務。
- 在流服務中禁用「savePipelineToFile」步驟。
- 在您的流量服務最頂端添加「restorePipelineFromFile」步驟。
- 以調試模式運行webMethods Designer並逐步完成。一旦 越過「restorePipelineFromFile」步驟,您應該看到 管道的全部內容,包括由 客戶端傳遞的輸入。如果您繼續逐步完成 步驟的流量服務步驟,則應該看到最終輸出的內容。
服務「savePipelineToFile」和「restorePipelineFromFile」對調試服務非常有用。在「管道」的文件將在位於:
IntegrationServer\pipeline
如果您的需求決定了你需要生成XML平面文件,然後使用以下命令:
要序列文件,XML(WmPublic包)
pub.xml:documentToXMLString
編寫XML字符串到文件(WmPublic包)
pub.file:stringToFile
希望它可以幫助!
編輯:
默認情況下,SOAP頭是隱藏的。大多數情況下,您不需要soap頭文件,但可以通過執行以下操作強制webMethods將soap頭文件添加到管道中。
1)單擊Web服務描述符。
2)在屬性面板中,設置 「管道接頭已啓用」 爲true。
SOAP標頭將不會出現在您的管道在設計時。它只會在運行時存在。如果你想看到的肥皂頭的內容,那麼你就需要使用「savePipelineToFile」 /「restorePipelineFromFile」我先前所描述的技術。
爲了使SOAP頭出現在設計時,那麼你將不得不做隱式映射到SOAP頭字段,就好像他們在那裏。
相關問題
- 1. Backbone.js - 將數據保存到服務器
- 2. 將數據集保存到數據庫
- 3. 將數據集保存到數據庫
- 4. 流星將圖像數據保存到服務器集合
- 5. 如何將文件從數據庫保存到服務器php
- 6. 將圖像保存到數據庫並從服務器加載
- 7. 將數據保存到閃存介質服務器,如rdbms
- 8. 將tmp文件保存到數據庫
- 9. WSO2 ESB在數據庫服務器中保存代理服務
- 10. 將數據集數據保存到其他數據庫
- 11. Android - 試圖保存到服務器數據庫
- 12. 如何從數據庫文件保存到服務器
- 13. 從服務器下載圖像並保存到數據庫中
- 14. 保存生成PDF到服務器
- 15. 將文件上傳到服務器,但文件名不保存到數據庫
- 16. 將新數據保存到數據集
- 17. 將商業服務器與持續集成服務器集成
- 18. 如何在重新啓動服務器時將數據集保存到數據庫
- 19. 將ssl集成到共享託管服務器
- 20. 將專用服務器託管的rhodecode集成到閒置中
- 21. 如何將數據集導出到xls並保存在服務器硬盤上
- 22. 將sas數據集文件保存到服務器上的本地文件夾
- 23. 將裁剪後的圖像保存到本地服務器,並將其保存到MySQL數據庫的網址
- 24. 將redis集成到無服務器
- 25. 將RequireJS集成到OSGi服務器中
- 26. Total.js將數據保存到數據庫
- 27. 將數組保存到數據庫中
- 28. 將數據保存到數據庫yii2
- 29. 如何將數據保存到服務器上(「在雲端」)?
- 30. 如何將angularjs數據保存到服務器的文件中?
但將savePipelineToFile挽救文件包括SOAP頭都XMLDATA? – gudek
你應該在你原來的問題,您還需要肥皂頭(更新我的回答)已經提及。 savePipelineToFile將在webMethod自己的管道XML結構中保存運行時管道中的所有內容。如果這不是你想要的,那麼你將不得不使用「documentToXmlString」在我的答案描述自己序列化管道的文件。 – TchiYuan