J2C komponensek meghívására használhat Ant parancsfájlokat, amelyek a munkaterületről vagy a parancssorból is hívhatók.
A J2C varázsló Ant konfigurációs fájl gyorsan létrehozását teszi lehetővé a kiválasztások és beírt értékek lementésével. Mivel az Ant konfigurációs fájl lényegében XML fájl, ezért módosítása vagy összeépítése teljesen kézi úton valósítható meg.
Az Ant konfigurációs fájl egy cél fából áll, ahol a különféle feladatok futnak. Célon belüli feladatok csővezetékszerűen kerülnek feldolgozásra. Minden feladatot objektum futtat, amely adott feladat felületet valósít meg. Amikor az Ant konfigurációs fájl meghívásra kerül, akkor a minden egyes feladat megfelelő tulajdonságai a megvalósító feladat objektumába kerülnek betöltésre. Az információk betöltése után a feladat objektum meghívásra kerül.
Adatok feltérképezése feladat
<adapter:discover> <adapter:performImport agent="{com/ibm/adapter}CobolDiscoveryAgent"> <adapter:importResource> <adapter:propertyGroup name="CobolFileGroup"> <adapter:propertyElement name="CobolFile" value="/${project}/taderc99.ccp"/> </adapter:propertyGroup> </adapter:importResource> <adapter:queryProperties> <adapter:propertyGroup name="ImportProperties"> <adapter:propertyElement name="Platform" value="Win32"/> </adapter:propertyGroup> </adapter:queryProperties> <adapter:queryResult> <adapter:selectElement name="DFHCOMMAREA"/> </adapter:queryResult> </adapter:performImport> <adapter:writeToWorkspace writer="{com/ibm/adapter/cobol/writer}JAVA_WRITER"> <adapter:propertyGroup name="COBOLToJavaResourceWriter"> <adapter:propertyElement name="GenerationStyle" value="0"/> <adapter:propertyGroup name="Java Type Name"> <adapter:propertyElement name="Overwrite existing class" value="true"/> <adapter:propertyElement name="Project Name" value="${project}"/> <adapter:propertyElement name="Package Name" value="com.ibm.test"/> <adapter:propertyElement name="Class Name" value="Taderc99"/> </adapter:propertyGroup> </adapter:propertyGroup> </adapter:writeToWorkspace> </adapter:discover>
<?xml version="1.0" encoding="UTF-8" ?> <project xmlns:adapter="http://com.ibm.adapter" default="DataBinding1" name="/Taderc99/CustomerInfo.xml"> <property name="debug" value="true" /> <property name="project1" value="Taderc99" /> <target name="DataBinding1"> <adapter:createProject projectName="${project1}" projectType="Java" /> <adapter:discover> <adapter:performImport agent="{com/ibm/adapter}CobolDiscoveryAgent"> <adapter:importResource> <adapter:propertyGroup name="CobolFileGroup"> <adapter:propertyElement name="CobolFile" value="C:\Samples\CICS\taderc99\taderc99.cbl" /> </adapter:propertyGroup> </adapter:importResource> <adapter:queryProperties> <adapter:propertyGroup name="ImportProperties"> <adapter:propertyElement name="Platform" value="Win32" /> <adapter:propertyElement name="Codepage" value="ISO-8859-1" /> <adapter:propertyElement name="Numproc" value="PFD" /> <adapter:propertyElement name="FloatingPointFormat" value="IEEE 754" /> <adapter:propertyGroup name="ExternalDecimalSignGroup"> <adapter:propertyElement name="ExternalDecimalSign" value="ASCII" /> </adapter:propertyGroup> <adapter:propertyGroup name="EndianGroup"> <adapter:propertyElement name="Endian" value="Little" /> <adapter:propertyElement name="RemoteEndian" value="Little" /> </adapter:propertyGroup> <adapter:propertyGroup name="CompileOptions"> <adapter:propertyElement name="Quote" value="DOUBLE" /> <adapter:propertyElement name="Trunc" value="STD" /> <adapter:propertyElement name="Nsymbol" value="DBCS" /> </adapter:propertyGroup> </adapter:propertyGroup> </adapter:queryProperties> <adapter:queryResult> <adapter:selectElement name="DFHCOMMAREA" /> </adapter:queryResult> </adapter:performImport> <adapter:writeToWorkspace writer="{com/ibm/adapter/cobol/writer}JAVA_WRITER"> <adapter:propertyGroup name="COBOLToJavaResourceWriter"> <adapter:propertyElement name="GenerationStyle" value="Default" /> <adapter:propertyGroup name="Java Type Name"> <adapter:propertyElement name="Project Name" value="${project1}" /> <adapter:propertyElement name="Package Name" value="sample.cics" /> <adapter:propertyElement name="Class Name" value="CustomerInfo" /> <adapter:propertyElement name="Overwrite existing class" value="true" /> </adapter:propertyGroup> </adapter:propertyGroup> </adapter:writeToWorkspace> </adapter:discover> <eclipse.refreshLocal depth="infinite" resource="${project1}" /> <eclipse.incrementalBuild project="${project1}" /> </target> </project>
Szolgáltatás előállítása feladat
Abban a speciális esetben, ha nyelvi importálásról van szó (COBOL, C vagy PL/I), akkor további lépés szükséges: a Felület kötés előállítása. A következő példa a J2C komponens előállításához használt Ant parancsfájl feltérképezési szakaszát írja le:
<j2c:generateService> <j2c:buildService package="com.ibm.test" class="Taderc99Interface"> <j2c:method> <j2c:methodName value="gettaderc99"/> <j2c:methodInput value="${project}/com/ibm/test/Taderc99.java"> <j2c:argumentBinding property="commareaLength" propertyType="InteractionSpec" name="length" type="int"/> </j2c:methodInput> <j2c:methodOutput value="${project}/com/ibm/test/Taderc99.java"/> <j2c:interactionSpec class="com.ibm.connector2.cics.ECIInteractionSpec"> <adapter:propertyGroup name="InteractionSpec property group"> <adapter:propertyElement name="functionName" value="TADERC99"/> </adapter:propertyGroup> </j2c:interactionSpec> </j2c:method> <j2c:managedConnectionFactory class="com.ibm.connector2.cics.ECIManagedConnectionFactory" target="myJNDIName"> <adapter:propertyGroup name="Managed connection property group"> <adapter:propertyGroup name="Server"> <adapter:propertyElement name="ConnectionURL" value="rubicon.torolab.ibm.com"/> <adapter:propertyElement name="ServerName" value="rubicon"/> </adapter:propertyGroup> <adapter:propertyGroup name="UserVerification"> <adapter:propertyElement name="UserName" value="sysad"/> <adapter:propertyElement name="Password" value="sysad"/> </adapter:propertyGroup> </adapter:propertyGroup> </j2c:managedConnectionFactory> <j2c:connectionSpec class="com.ibm.connector2.cics.ECIConnectionSpec"/> <j2c:resourceAdapter project="CICS ECI"/> </j2c:buildService> <adapter:writeToWorkspace writer="com/ibm/adapter/j2c/codegen:J2CAnnotationWriter"> <adapter:propertyGroup name="J2C Writer Properties"> <adapter:propertyElement name="Project" value="${project}"/> <adapter:propertyElement name="InterfaceName" value="Taderc99Interface"/> <adapter:propertyElement name="BindingName" value="Taderc99Binding"/> <adapter:propertyElement name="PackageName" value="com.ibm.test"/> <adapter:propertyGroup name="CommandBean"> <adapter:propertyGroup name="gettaderc99"> <adapter:propertyElement name="EnableGenerate" value="true"/> <adapter:propertyElement name="CommandBeanName" value="Taderc99CICSECIServiceProxy"/> <adapter:propertyElement name="Input" value="Taderc99Part"/> <adapter:propertyElement name="Output" value="Taderc99Part"/> </adapter:propertyGroup> </adapter:propertyGroup> </adapter:propertyGroup> </adapter:writeToWorkspace> </j2c:generateService>
További feladatok
Ezek segédprogram feladatok, hasznosak, de nem kötelezőek a műtermék előállításához
<adapter:createProject projectName="taderc99Project" projectType="Web" runtimeName="J2EE Runtime Library" addToEAR="yes" EARProjectName="TestEAR"/>Ahol:
<j2c:importResourceAdapter connectorModule="cicseci602" connectorFile="D:\IBM\SDP70\ResourceAdapters\cics15\cicseci602.rar" targetRuntime="J2EE Runtime Library" addToEAR="yes" EARProjectName="TestEAR"/>
Tulajdonságok meghatározása
A Feltérképezési ügynökökre és Munkaterület-íróra egyedi nevük (QName) alapján hivatkoznak. Az összes Feltérképezési ügynök, Munkaterület erőforrás-író és Importálási konfiguráció megkereséséhez használja a parancsfájl könyvtárban található displayAll.xml parancsfájlt.
Ahogyan a példa parancsfájlokban megfigyelhető, a feltérképezési ügynököknek vagy erőforrás-íróknak átadott értékeket a propertyGroup és propertyElement címkék határozzák meg. A tulajdonságcsoport logikai csoportosítást definiál beágyazott szerkezeten keresztül. A szerkezeti elrendezés, valamint a tartalmazott csoport- és tulajdonságnevek leírása a feltérképezési ügynök vagy az erőforrás-író dokumentációjában található.
A tulajdonságokat név-érték pár attribútumok definiálják. A név valójában a feltérképezési ügynök vagy erőforrás-író által belsőleg definiált tulajdonság és az érték továbbadására használják. Fontos a helyes név használata. Ha az összetevő a nevet nem, ismeri fel, akkor az érték nem lesz beállítva.