Toto pravidlo zjistí přítomnost webových služeb JAX-RPC na základě následujících kritérií:
- Přítomnost souboru web-services.xml
- Přítomnost souboru, weblogic-webservices.xml, a souboru, webservices.xml, ve stejné složce
Manuální řešení
Chcete-li generovat webové služby JAX-RPC na základě deskriptorů nasazení webových služeb WebLogic J2EE, musíte ručně vytvořit skript Ant pomocí specifických IBM® Ant úloh. Skript by měl být přidán do kořenové složky projektu, pokud již neexistuje soubor vytvořený na adrese IBM Ant. Tyto úkoly budou generování webových služeb JAX-RPC z deskriptorů nasazení.
Vlastnosti pravidla
Pro zajištění přesných výsledků analýzy je nutné zadat správné hodnoty vlastností pravidel. Tyto vlastnosti by měly být přezkoumány a vhodně nakonfigurovat na základě kontextu vaší aplikace. Vlastnosti pro toto pravidlo jsou:
- Název vygenerovaného skriptu Ant
:
Určuje název nového generovaného skriptu Ant. Skript musí být platný název souboru. Hodnota nesmí obsahovat žádná lomítka vpřed ani vzad. Skript bude v kořenové složce projektu.
Výchozí hodnota: build-ibm-ws.xml
- Název složky generování:
Určuje název složky, v níž budou uloženy artefakty generování. Hodnota nesmí obsahovat žádná dopředná a zpětná lomítka. Generování složky bude v kořenové složce projektu.
Výchozí hodnota: ibm-ws-gen
Cesta ke třídě Ant
Cesta ke třídě Ant je vypočtena z projektu Eclipse.
Je důležité ověřit, že všechny prvky pro kompilaci jsou uvedeny v cestě ke třídě Eclipse.
Služby JAX-RPC definované v souboru web-services.xml
Na základě informací a typu služeb definovaných v souboru web-services.xml je skript Ant vygenerován a případně i další kód Java, který představuje rozhraní koncového bodu webové služby, aby bylo možné reprodukovat službu JAX-RPC.
- Podporované komponenty
Lze rozpoznávat a převádět pouze objekty typu Stateless Session enterprise bean (<stateless-ejb>) a Java(R) (<java-class>).
- Nestavové komponenty EJB:
Soubor JAR Enterprise JavaBeans (TM) (EJB), jak je definován v atributu cesty v souboru <ejb-link>, musí v projektu existovat. Automatická oprava prohledá soubor EJB JAR a vygeneruje nové rozhraní koncového bodu služby (SEI) na základě vzdálené třídy EJB.
Rozhraní SOI se liší od vzdálených rozhraní EJB v tom, že třída musí rozšiřovat
java.rmi.Remote
, a každá metoda musí vyvolat výjimku,
java.rmi.RemoteException
.
Automatická oprava použije reflexi Java na EJB vzdáleného rozhraní k vygenerování nového SEI .
Proto se ujistěte, že cesta tříd vašeho projektu Eclipse obsahuje všechny potřebné třídy, soubory JAR a adresáře, které jsou vyžadovány v projektu pro úspěšné načtení vzdálené třídy EJB.
SEI musí být vygenerována ve složce sei uvnitř složky generování, jak ji zadal uživatel v pravidle vlastnosti. Balíček SEI odpovídá vzdálenému rozhraní EJB a název SEI bude stejný jako název vzdáleného rozhraní EJB s připojeným slovem SEI. Kromě toho bude nová složka SEI je přidána do cesty k třídám projektu.
- Komponenty třídy Java:
Podobně jako u komponent EJB vygeneruje automatická oprava rozhraní koncového bodu služby ze třídy Java, která je definována v atributu <název třídy>.
- Cíle vygenerovaného skriptu Ant:
Vygenerovaný skript Ant obsahuje cíle pro vygenerovat soubor WSDL a službu JAX-RPC na základě nové SEI, která bude vytvořena.
Cíl generování WSDL bude mít název genWSDL_ssss, kde ssss je název služby JAX-RPC, která byla poskytnuta v poli atributu name prvku <web-service>.
Cíle generování služby mají název genService_pppp, kde pppp je název komponenty z atributu name daného prvku <stateless-ejb> nebo <java-class>.
Automatická oprava nepoužije poskytnuté informace v jiných prvcích, například <handlers-chain>, <types>, <operace>, <zabezpečení> atd.
Služby JAXRPC definované v souboru webservices.xml
Na základě informací a typu služeb definovaných v souboru webservices.xml je vygenerován skript Ant pro reprodukci služby JAX-RPC.
- Cíle vygenerovaného skriptu Ant:
Vygenerovaný skript Ant obsahuje cíle pro generování souboru WSDL a služby JAX-RPC.
Cíl generování WSDL se generuje pouze v případě, že nelze najít soubor WSDL definovaný v prvku, <wsdl-soubor>.
Je-li vytvořen, má cíl generování WSDL název genWSDL_ssss, kde ssss je název služby, jak je definováno v prvku <webservice-description-name>.
Cíle generování služby budou mít název genService_pppp, kde pppp je název portu, jak je definován prvkem <port-component-name>.
Úlohy Ant serveru IBM WebSphere Application Server
Server WebSphere(R) Application Server zahrnuje úlohy Ant jako java2wsdl a wsdl2java ke generování nezbytných artefaktů pro služby JAX-RPC. Generovaný skript Ant používá tyto úlohy k sestavení služby.
Další informace o těchto úlohách lze získat z dokumentace k produktu
WebSphere Application Server.
Spuštění skriptu Ant
Po vytvoření skriptu Ant si jej prohlédněte a v případě potřeby přidejte další úpravy.
Další možnosti přizpůsobení úloh IBM Ant naleznete v dokumentaci k aplikačnímu serveru.
Skript musíte spustit pomocí nástrojů Ant, které
jsou obsaženy v produktu WebSphere Application Server. Skript IBM Ant lze
spustit z:
- WAS_HOME\bin\ws_ant.bat v operačních systémech Windows(R)
- WAS_HOME\bin\ws_ant.sh v operačních systémech UNIX(R)
Příklad: c:\IBM\AppServer\bin\ws_ant.bat -f
c:\eclipse\MyProject\ibm-ws-gen.xml genService_TestService
Při spuštění cílů Ant jsou vytvořené artefakty umístěny ve složce generování. Uživatel může zkontrolovat vygenerovaný kód, deskriptory implementace a poté přidat tyto artefakty do svých modulů.