之間插入以下的程式碼,,但只是個很陽春,沒動畫特效,若有其他需要,還需其他工夫,或使用相關的函式庫,如D3。
請注意,要在支援HTML5的瀏覽器上跑,才看得到效果哦。
請注意,要在支援HTML5的瀏覽器上跑,才看得到效果哦。
Question | Answer |
May be defined on which EJB type(s) | Session bean and message driven beans. |
Intercept which method types. | Session bean business methods and message driven bean's message listener methods. |
Location of interceptor methods. | In special interceptor class, interceptor superclass, or in the target class. |
Restrinctions on interceptor methods. | At most one per class. |
Annotation(s) use to define interceptor method(s) | |
Interceptor method security context. | Same security context as intercepted business method. |
Interceptor method transaction context. | Same transaction context as intercepted business method. |
Exceptions interceptor methods may throw. | Exceptions declared in the throws-clause of the intercepted business method and system exceptions. |
Interceptor method signature. | Object someMethodName(InvocationContext) throws Exception 其中,「someMethodName」為開發者自取的方法名稱; 「InvocationContext」類別在,「javax.interceptor」套件中。 |
Interceptor method visibility | Public, protected, private or package visibility |
netstat
指令列出的內容看起來很相像,但他的UI提供一些方便的設定。NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-x] [-t] [interval] -a 顯示所有連線和接聽連接埠。 -b 顯示涉及建立每個連線或接聽連接埠的可執行檔。在某些情況下, 已知可執行檔可主控多個獨立元件,在這些情況下,會顯示涉及 建立連線或接聽連接埠的元件順序。在此案例中,可執行檔名稱 位於底部的 [] 中,上方便是它呼叫的元件,直到已達 TCP/IP。 請注意,此選項相當耗時,而且如果您沒有足夠的權限,便會失敗。 -e 顯示乙太網路統計資料。此選項可搭配 -s 選項合併使用。 -f 顯示外部地址的完整網域名稱 (FQDN)。 -n 以數字格式顯示位址和連接埠號碼。 -o 顯示與每個連線相關聯的擁有處理程序識別碼。 -p proto 顯示由 proto 指定的通訊協定連線; proto 可以是下列任一個: TCP、UDP、TCPv6 或 UDPv6。如果與 -s 選項搭配使用來顯示每個 通訊協定的統計資料,proto 可以是下列任一個: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。 -r 顯示路由表。 -s 顯示每個通訊協定的統計資料。依預設,將會顯示 IP、IPv6、 ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的統計資料; 可以使用 -p 選項來指定預設的子集。 -t 顯示目前的連線卸載狀態。 -x 顯示 NetworkDirect 連線、接聽程式與共用端點。 -y 顯示所有連線的 TCP 連線範本。不能合併使用其他選項。 interval 重新顯示選取的統計資料,每次顯示之間會暫停您在 interval 選項 指定的秒數。按 CTRL+C 鍵可以停止重新顯示統計資料。如果省略, netstat 將會列印一次目前的設定資訊。
Exception | Transaction Status | Notes |
The following exceptions are the basic exceptions | ||
EJBException | May or may not have been marked for rollback. | Not possible to determine whether EJB method has executed or not. Error may have occurred during communication with, or processing in, the EJB. |
RemoteException | May or may not have been marked for rollback. | See EJBException. |
The following exceptions indicate that the transaction has been marked for rollback and will never commit. | ||
EJBTransactionRolledback-Exception | Rolled back or marked for rollback | Subclass of EJBException. EJB invoked using EJB 3.1 view and EJB executing in client's transaction. |
TransactionRolledbackLocal-Exception | Rolled back or marked for rollback | Subclass of EJBException. EJB invoked using EJB 2.1 local client view. |
TransactionRolledback-Exception | Rolled back or marked for rollback | Subclass of RemoteException. JTA standard exception. EJB invoked using EJB 2.1 remote view or web service view. |
The following exceptions indicate that an attempt was made to invoke a method that require a client transaction without the client having a transaction context. These exceptions usually indicate an error in method transaction requirement declaration(s). |
||
EJBTransactionRequired-Exception | No transaction | Subclass of EJBException. EJB invoked using EJB 3.1 view. |
TransactionRequiredLocal-Exception | No transaction | Subclass of EJBException. EJB invoked using EJB 2.1 local client view. |
TransactionRequiredException | No transaction | Subclass of RemoteException. JTA standard exception. EJB invoked using EJB 2.1 remote view or web service view. |
The following exceptions indicate that an attempt was made to invoke a method on an EJB object that does not exist. | ||
NoSuchEJBException | Rolled back or marked for rollback. | Subclass of EJBException. EJB invoked using EJB 3.1 view. |
NoSuchObjectLocal-Exception | Rolled back or marked for rollback. | Subclass of EJBException. EJB invoked using EJB 2.1 local client view. |
NoSuchObjectException | Rolled back or marked for rollback. | Subclass of RemoteException. EJB invoked using EJB 2.1 remote client view. |
}
上列中,值得一提的是「@WebService」這個annotation,只要加上這個,就表示這支Java就是一個Web Service的實作類別。package idv.bio.ws;import javax.jws.WebService;@WebServicepublic class Calculator {public int add(int a, int b){return a + b;}}
執行「CalculatorPublisher.class」之後,在Console應該可以看到下列訊息:package idv.bio.ws;import javax.xml.ws.Endpoint;public class CalculatorPublisher {public static void main(String[] args){String url = "http://localhost:1234/cal";Endpoint.publish(url, new Calculator());System.out.println("Calculator Service published, url: " + url);}}
把「http://localhost:1234/cal?wsdl」貼到你的瀏覽器上,可以看到WSDL,它是描述Web Service相關資訊的一個XML文件,如:2013/8/16 下午 11:24:57 com.sun.xml.internal.ws.model.RuntimeModeler getRequestWrapperClass資訊: Dynamically creating request wrapper Class idv.bio.ws.jaxws.Add2013/8/16 下午 11:24:57 com.sun.xml.internal.ws.model.RuntimeModeler getResponseWrapperClass資訊: Dynamically creating response wrapper bean Class idv.bio.ws.jaxws.AddResponseCalculator Service published, url: http://localhost:1234/cal
特徵
| Full EJB 3.1 API | EJB 3.1 Lite API |
Java Persistence 2.0 | 可用 | 可用 |
Session beans local/no interface client view | 可用 | 可用 |
Session beans 3.0 remote client view | 可用 | 不可用 |
Session beans 2.x remote client view | 可用 | 不可用 |
Session beans exposed as JAXWS web service endpoints | 可用 | 不可用 |
Session beans exposed as JAXRPC web service endpoints | 可用 | 不可用 |
EJB timer service | 可用 | 不可用 |
Asynchronous invocation of session beans | 可用 | 不可用 |
Interceptors | 可用 | 可用 |
RMI-IIOP interoperability | 可用 | 不可用 |
Bean and container managed transactions | 可用 | 可用 |
Declarative and programmatic security | 可用 | 可用 |
Embeddable API | 可用,但embeddable container只需支援EJB 3.1 Lite | 可用 |
Message driven beans | 可用 | 不可用 |
StAX | SAX | DOM | |
API類型 | Pull, streaming | Push, streaming | In memory, tree |
易用性 | 高 | 中等 | 高 |
XPath Capable | 否 | 否 | 是 |
CPU與記憶體效率 | 好 | 好 | 視使用方式而定 |
只能往前(Forward Only) | 是 | 是 | 否 |
讀取XML | 是 | 是 | 是 |
寫入XML | 是 | 否 | 是 |
Create, Read, Update, Delete | 否 | 否 | 是 |