2011-06-23 66 views
0

我已決定在此項目上使用ReST,但昨天我被告知,他們的API目前不支持POST中的ReST並且我應該使用SOAP。SOAP in .jsp文件

基本上,我們有一個「註冊」用戶頁面,將數據提交給我們自己的數據庫。我們的目標是將相同的數據提交給我們的電子郵件營銷活動服務(他們提供了一個wsdl鏈接)。

我從來沒有使用SOAP(或ReST),我想知道是否有可能在jsp頁面中執行此操作。該表格非常簡單,帶有兩個名爲「cust_name」和「cust_email」的輸入。

我嘗試過在線掃描,但對於在.jsp中實現的SOAP,其結果相當渺茫。我是否需要將「soap」頁面包含到.jsp頁面,還是有一個更簡單的方法。

謝謝。

回答

1

您可以在JSP頁面中執行任何可以在servlet中執行的操作(事實上,JSP頁面在編譯之前會轉換爲servlet!)。但是,將Java代碼嵌入到JSP中被認爲違背了最佳實踐。你應該創建一個可以與你的web服務交互的servlet(可能使用Apache Axis),然後將相關信息放入某種模型中,然後用JSP顯示它。這樣做保留了模型 - 視圖 - 控制器範例。 JSP是視圖,servlet是控制器。那有意義嗎?

Apache Axis將採用WSDL並創建存根Java代碼來與webservice進行交互(創建任何必需的SOAP信封等),以便您可以與應用程序本地交互。如果您有權訪問WSDL,那麼這絕對是一種方式,因此您不必重寫SOAP固有的所有xml生成代碼。

+0

是的,希望我可以安裝Apache Axis(或類似的東西)。不幸的是,我們在虛擬服務器上,我通常無法訪問主根目錄來設置任何東西(即cron) –

-1

Apache Axis將安裝在您的客戶端上。它只會生成Java代碼。你將不得不添加你創建的java包,也可能需要添加一些apache axis java。雖然你沒有root訪問權限,但我認爲你可以訪問java代碼,這就是你所需要的。