EJB3 發布WebService及客戶端呼叫

2021-05-22 15:55:18 字數 1639 閱讀 3091

ejb3發布webservice很簡單,但是在客戶端呼叫上卻遇到了太多的問題,差不多一天的時間終於搞定了,下面是整個過程,我的伺服器採用weblogic10.3

發布webservice

* @author 王碩

@webservice

@soapbinding(style=soapbinding.style.document)

public inte***ce ws {

public int sum(int x, int y);

* @author 王碩

@stateless

@webservice(servicename="wsservice")

public class wsimpl implements ws {

@webmethod

public int sum(int x, int y) {

return x + y;

部署到weblogic上,webservice就發布成功了,可以檢視wl console, 也可以直接訪問http://localhost:7001/wsimpl/wsservice?wsdl檢視是否成功,這裡需要注意的是,ws上的@webservice是必須要有的,因為最後這個介面是要被打成jar供呼叫service的客戶端使用的,如果沒有這個註解的話,container是無法識別他為乙個service inte***ce的, 我這裡是將session bean作為服務發布的,這樣做的好處不少書籍中都介紹了,我這裡就不多說了,下面就客戶端的呼叫,我這裡建立了乙個新的project,過程如下:

* 負責呼叫ws的client

* @author 王碩

* @author 王碩

@local

public inte***ce wsinvoke {

public int sum();

* @author 王碩

@stateless

public class wsinvokeimpl implements wsinvoke {

@webserviceref

private wsproxy proxy;

public int sum() {

return proxy.proxysum();

public void setproxy(wsproxy proxy) {

this.proxy = proxy;

public wsproxy getproxy() {

return proxy;

EJB3使用小記

這陣子在專案裡面用ejb3做乙個資料同步的功能,在開發過程中那個遇到幾個技術點,簡單記錄下。1.因為資料量有點大 百萬使用者 所以必須迴圈獲取記錄,平衡下來,每次取數1k 3k之間,同時取數和對返回的更新都需要記錄狀態,為了單條記錄錯誤不影響整個流程,所以取消了整個方法的事務,僅控制在單個操作。簡單...

EJB3 入門檔案(二)

了解基本的 session bean 與 message driven bean 撰寫方式,接下來看一些生命週期 攔截器 timer 等服務。來看看 session bean 與 message driven bean 的生命週期與回呼方法。攔截器 interceptor 攔截器可以介入方 法呼叫前...

EJB3 入門檔案(二)

了解基本的 session bean 與 message driven bean 撰寫方式,接下來看一些生命週期 攔截器 timer 等服務。來看看 session bean 與 message driven bean 的生命週期與回呼方法。攔截器 interceptor 攔截器可以介入方 法呼叫前...