簡體   English   中英

將EJB3移植到EJB2

[英]Porting EJB3 to EJB2

這是一個奇怪的情況。 讓我盡我所能地解釋一下。

我有一個Client接口,其中包含引發自定義異常的方法。 我的EJB3 Remote擴展了此接口Client ,並@Remote注釋。 我的EJB3 Bean用於擴展Remote,並@Stateless注釋。

現在來了怪異。 由於一個非常具體的問題,我無法在我的應用服務器上部署任何EJB3 jar。 (問題不在於我如何解決此部署問題。)

現在,我必須將代碼從EJB3降級到EJB2。 由於我的遠程接口中的所有方法都必須拋出RemoteException (EJB2規范),因此我無法再從Client接口擴展。

我剩下的選項是創建一個EJB2Wrapper,它可以從Client接口擴展,也可以在我調用的每個方法中擴展到Remote Interface。

這為每個方法創建了丑陋的try catch塊,因為我必須捕獲RemoteException

有一個更好的方法嗎?

我會說,如果你的bean中的功能以POJO開頭,你就不會遇到這么大的問題。 如果你有這個,你可以簡單地部署為EJB3,EJB2,servlet,web服務或任何你想要的東西。

也許最好的解決方案是將EJB3中的產品作為POJO提取,並將部署選擇推遲到最后。 EJB2Wrapper我更喜歡這種解決方案。 您已經必須做一些工作。 即使您將來決定使用REST Web服務而不是EJB,最好還是投資具有價值的東西。

回答我自己的問題來關閉循環。

到目前為止,沒有更好的方法可以做到這一點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM