IBM Support

Yantra ear is created Incorrectly for Websphere on Windows [ Version 7.3]

Troubleshooting


Problem

Yantra ear is created Incorrectly for Websphere on Windows [ Version 7.3]

Symptom

PART: Platform-Installation 7.3 Platform
PRODUCT: Distributed Order Management
COMPONENT: Installation
OS: WINDOWS
DATABASE: ALL SUPPORTED VERSION
WEB SERVER: WEBSPHERE

The thirdparty jar JBChartX.jar can create a problem by including itself before other jars while building ear on windows.
This results in geiing "NoModuleFound Exception" during deployment on Websphere.

Cause

Resolving The Problem

This can be resolved by changing the buildWS.xml to explicitly put the JBChartX.jar (or jbchartx.jar) in the end of the patternset as follows.

**********************************************


<project basedir="." default="create-ear" name="yfs">
<property environment="env"/>
<property name="yfs_home" value="${env.YFS_HOME}"/>
<property name="tmp" value="${yfs _home}/tmp/"/>
<property name="app-tmp" value="${tmp}/app/"/>
<property name="dd_dir" value="${yfs_home}/descriptors/"/>
<property name="drop" value="${yfs_home}/drop"/>

<taskdef name="foreach" classname="com.yantra.tools.ant.ForEach" classpath="${yfs_home}/lib/yfcbe.jar" />
<taskdef name="cleanjspv2" classname="com.yantra.tools.ant.CleanJspv2" classpath="${yfs_home}/lib/yfcbe.jar" />

<path id="yantra.class.path">
<pathelement location="${tmp}/build/"/>
<pathelement location="${java.home}/lib/dt.jar"/>
<pathelement location="${yfs_home}"/>
<fileset dir="${yfs_home}/lib">
<include name="**/*.jar"/>
<include name="**/*.zip"/>
</fileset>
</path>

<path id="default.yantra.class.path">
<pathelement lo cation="${tmp}/build/"/>
<pathelement location="${yfs_home}"/>
<pathelement location="${java.home}/lib/dt.jar"/>
<fileset dir="${yfs_home}/lib">
<include name="**/*.jar"/>
<include name="**/*.zip"/>
</fileset>
</path>


<target name="create-ear" >
<mkdir dir="${yfs_home}/extn" />
<mkdir dir="${drop}" />

<antcall target="create-ejb" />
<antcall target="create-war" />
<antcall target="clean-tmp" />

<zip zipfile="${drop}/yantra.ear" >
<zipfileset dir="${dd_dir}/EAR/META-INF" includes="**" prefix="META-INF" />
<zipfileset dir="${drop}" includes="yantra.jar" fullpath="yantra.jar"/>
<zipfileset dir="${drop}" includes="yfs_Main.jar" fullpath="yfs_Main.jar"/>
<zipfil eset dir="${drop}" includes="yantra.war" fullpath="yantra.war"/>
</zip>
</target>


<target name="webservice-extn" description="Yantra WebServices Extensibility">
<antcall target="gennamedws"/>
<antcall target="clean-tmp" />
<mkdir dir="${tmp}/com/yantra/interop/tools/xmldata"/>
</target>

<target name="gennamedws">
<mkdir dir="${tmp}/build"/>

<unzip src="${yfs_home}/lib/ycpbe.jar" dest="${tmp}">
<patternset>
<include name="**/*.xsl"/>
<include name="**/*.xml"/>
</patternset>
</unzip>

<java fork="true" classname="com.yantra.interop.tools.InteropBuildHelper" classpathref="default.yantra.class.path">
<arg value="-dxml"/>
<arg val ue="${tmp}/com/yantra/interop/tools/xmldata/api.xml"/>
<arg value="-API"/>
<arg value="Y"/>
</java>



<java classname="com.yantra.interop.tools.NamedWebServiceGenerator" fork="true" classpathref="yantra.class.path">
<classpath>
<pathelement location="${tmp}"/>
</classpath>
<arg value="/com/yantra/interop/tools/xmldata/api.xml"/>
<arg value="/webservices/namedwebservices.xml"/>
<arg value="${tmp}/merged.xml"/>
<arg value="Merged"/>
</java>


<mkdir dir="${tmp}/com/yantra/interop/services/webservices/rpc/ejb"/>
<java classname="org.apache.xalan.xslt.Process" fork="true"<br>classpathref="yantra.class.path"> ;
<arg value="-XSL"/>
<arg value="../tmp/com/yantra/interop/tools/xsl/webserviceapi.xsl"/>
<arg value="-IN"/>
<arg value="../tmp/merged.xml"/>
<arg value="-OUT"/>
<arg value="../tmp/com/yantra/interop/services/webservices/rpc/ejb/YIFWebServiceApi.j ava"/>
</java>

<java classname="org.apache.xalan.xslt.Process" fork="true"<br>classpathref="yantra.class.path">
<arg value="-XSL"/>
<arg value="../tmp/com/yantra/interop/tools/xsl/webserviceadapter.xsl"/>
<arg value="-IN"/>
<arg value="../tmp/merged.xml"/>
<arg value="-OUT"/>
<arg value="../tmp/com/yantra/interop/services/webservices/rpc/ejb/YIFWebServiceAdapt er.java"/>
</java>

<javac debug="on" srcdir="${tmp}" destdir="${tmp}/build" classpathre f="yantra.class.path"/>

<antcall target="regenwebservicesjar"/>

</target>

<target name="regenwebservicesjar">
<jar destfile="${yfs_home}/extn/ycpwsbe.jar" basedir="${tmp}/build" />
</target>


<target name="cleanjsp" unless="donot-cleanjsp" >
<cleanjspv2 dirname="${tmp}/webpages">
<fileset dir="${tmp}/webpages" >
<patternset >
<include name="**\/*.jsp"/>
</patternset>
</fileset>
</cleanjspv2>
</target>< br>

<target name="create-war">
<antcall target="clean-tmp" />
<copy todir="${tmp}" >
<fileset dir="${yfs_home}" includes="webpages/**">
<exclude name="**/apidata/**"/>
<exclude name="**/console/icons/**"/>
<exclude name="**/yfcicons/**"/>
<exclude name="**/application/**"/>
</fileset>
</copy>
<copy todir="${tmp}">
<fileset dir="${yfs_home}" includes="webpages/yfscommon/ERD/HTML/icons/**"/>
</copy>


<chmod parallel="true" dir="${tmp}" perm="ugo+rwx" includes="**/*.jsp"/>

<antcall target="cleanjsp"/>
<delete file="${drop}/yantra.war" />

<available file="${yfs_home}/extn/web.xml" property="extn.web.xml.present"/>
<antcall target="copywebfromDD" />

<zip zipfile="${drop}/yantra.war" >
<zipfileset dir="${tmp}/webpages" excludes="WEB-INF" />
<zipfileset dir="${dd_dir}/WAR/META-INF" includes="**" prefix="META-INF"/>
<zipfileset dir="${ dd_dir}/WAR/WEB-INF" includes="**" prefix="WEB-INF" excludes="${dd_dir}/WAR/WEB-INF/web.xml"/>
<zipfileset dir="${yfs_home}/extn" includes="web.xml" fullpath="WEB-INF/web.xml"/>
<zipfileset dir="${yfs_home}/resources" includes="*bundle*.properties" prefix="yfscommon"/>
<zipfileset dir="${yfs_home}/resources/extn" includes="*bundle*.properties" prefix="extn"/>
</zip>
</target>

<target name="copywebfromDD" unless="extn.web.xml.present">
<copy file="${dd_dir}/WAR/WEB-INF/web.xml" overwrite="false" tofile="${yfs_home}/extn/web.xml"/>
</target>

<target name="create-ejb" >
<antcall target="clean-tmp" />
<delete file="${drop}/yantra.jar" />
<delete file="${drop}/yfs_Main.jar" />



<foreach propertyname="zipfilename" targetname="unzip" >
<fileset dir= "${yfs_home}/lib" >
<patternset >
<include name="*.jar"/>
<include name="*.zip"/>
<exclude name="jsse.jar"/>
<exclude name="jnet.jar"/>
<exclude name="jcert.jar"/>
<exclude name="*ui.jar"/>
<exclude name="comm.jar"/>
<exclude name="yantrauisrc.jar"/>
<exclude name="yfsmigrator.jar"/>
<exclude name="pvxTree.jar"/>
<exclude name="JGo.jar"/>
<exclude name="yfcremote.jar"/>
<exclude name="soap*.jar"/>
<exclude name="JBChartX.jar"/>
</patternset>
</fileset>
<property name="dir" value="${yfs_home}/lib" />
</foreach>

<foreach propertyname="zipfilename" targetname="unzip" >
<fileset dir="${yfs_home}/extn" >
<patternset >
<include name="*.jar" />
<include name="*.zip"/>
<exclude name="*ui.jar"/>
</patternset>
</fileset>
<property name="dir" value="${yfs_home}/extn" />
</foreach>

<foreach propertyname="zipfilename" targetname="unzip" >
<fileset dir="${yfs_home}/lib" >
<patternset >
<include name="JBChartX.jar"/>
</patternset>
</fileset>
<property name="dir" value="${yfs_home}/lib" />
</foreach>

<foreach propertyname="zipfilename" targetname="unzip" >
<fileset dir="${yfs_home}/lib" >
<patternset >
<include name="jbchartx.jar"/>
</patternset>
</fileset>
<property name="dir" value="${yfs_home}/lib" />
</foreach>

<fileset id= "modules" dir="${tmp}/com/yantra/shared/"> <include name="*_pcaconfig.xml"/>
</fileset>
<property name= "temp" refid= "modules"/>
<concat destfile="${tmp}/com/yantra/shared/yantra_modules.txt">${temp}</concat>
<repl ace file="${tmp}/com/yantra/shared/yantra_modules.txt" token=";">
<replacevalue>]></replacevalue>
</replace>
< replace file="${tmp}/com/yantra/shared/yantra_modules.txt" token="\">
<replacevalue>/</replacevalue>
</replace>

<copy todir="${tmp}" overwrite="yes">
<fileset dir="${yfs_home}" includes="template/**" />
<fileset dir="${yfs_home}" includes="resources/**" />
<fileset dir="${yfs_home}" includes="template50sp2/**" />
<fileset dir="${yfs_home}" includes="template50sp4/**" />
<filese t dir="${yfs_home}" includes="template55sp2/**" />
</copy>
<copy todir="${tmp}" overwrite="yes" >
<fileset dir="${dd_dir}/EJB" includes="META-INF/**" />
</copy>

<jar jarfile="${drop}/yantra.jar" basedir="${tmp}" includes="com/yantra/interop/services/ejb/**,com/yantra/interop/services/webserv ices/rpc/ejb/**,META-INF/**" excludes="META-INF/MANIFEST.MF" manifest="${tmp}/META-INF/MANIFEST.MF" />
<jar jarfile="${drop}/yfs_Main.jar" basedir="${tmp}" excludes="com/yantra/interop/services/ejb/**,META-INF/**" />
<antcall target="clean-tmp" />
</target>

<target name="unzip" >
<unzip src="${dir}/${zipfilename}" dest="${tmp}" />
</target>

<target name="clean-tmp">
<delete dir="${tmp}" />
<mkdir dir="${tmp}" />
</target>

<target na me="db-init" >
<antcall target="clean-tmp" />
<delete dir="${tmp}/build"/>
<mkdir dir="${tmp}/build"/>
<delete dir="${tmp}/build/com/yantra/shared/dbclasses"/>
<delete dir="${tmp}/src/com/yantra/shared/dbclasses"/>
<mkdir dir="${tmp}/src/com/yantra/shared/dbclasses"/>

<mkdir dir="${tmp}/src/com/yantra/custom/api"/>
<mkdir dir="${tmp}/src/com/yantra/custom/customdb/history/impl"/>
<mkdir dir="${tmp}/src/com/yantra/custom/dbi"/>

<mkdir dir="${tmp}/src/com/yantra/ycp"/>
<mkdir dir="${tmp}/src/com/yantra/ycp/customEntity"/>
<mkdir dir="${tmp}/src/sampleXML"/>

<java fork="true" classname="com.yantra.tools.entityguru.generator.EntityGenerator">
<sysproper ty key="DoNotUsePS" value="${DoNotUsePS}"/>
<arg value="-ES"/>
<arg value="com.yantra.yfc.dblayer.YFCE ntity"/>
<arg value="-HS"/>
<arg value="com.yantra.yfc.dblayer.YFCEntityDBHome"/>
<arg value="-O"/>
<arg value="${tmp}/src/com/yantra/shared/dbclasses"/>
<arg value="-ED"/>
<arg value="${yfs_home}/database/entities/"/>
<arg value="-C"/>
<arg value="com.yantra.shared.dbi.*"/>
<arg value="-P"/>
<arg value="com.yantra.shared.dbclasses"/>
<arg value="-HISTORY"/>
<arg value="false"/>
<arg value="-DT"/>
<arg value="${yfs_home}/template/api/YFSDataTypes.xml"/>
<classpath refid="yantra.class.path"/>
</java>
</target>

<target name="db-extn-sqlserver" description="Creates Database Extensibility jar - Sqlserver">
<antcall target="db-extn-common">
<param name="DoNotUsePS" value= "true"/>
</antcall>
</target>

<target name="db-extn" description="Creates Database Extensibility jar">
<antcall target="db-extn-common">
<param name="DoNotUsePS" value="false"/>
</antcall>
</target>

<target depends="db-init" name="db-extn-common" >
<copy todir="${yfs_home}/extn" >
<fileset dir="${tmp}/src" includes="sampleXML/**/*.xml" />
</copy>

<copy todir="${tmp}/build" >
<fileset dir="${tmp}/src" includes="com/**/*.ser" />
<fileset dir="${tmp}/src" includes="com/**/*.xml" />
</copy>

<javac debug="on" destdir="${tmp}/build" srcdir="${tmp}/src" >
<classpath refid="yantra.class.path"/>
</javac>

<copy todir="${tmp}/build" >
< fileset dir="${yfs_home}">
<include name="database/entities/**/*.xml"/>
</fileset>
</copy>

<fileset id= "jars" dir= "${tmp}/build/database/entities"/>
<property name= "temp" refid= "jars"/>
<concat destfile="${tmp}/build/database/entities.txt">${temp}</concat>
<replace file="${tmp}/build/database/entities.txt" token=";">
<replacevalue>]></replacevalue>
</replace>
< !-- The filenames in the entities.txt have "\"(backslash) as the file seperator character<br>but its not acceptable on Unix. So it has been replaced with "/"(forward slash) which is<br>acceptable in both windows and unix-->
<replace file="${tmp}/build/database/entities.txt" token="\">
<replacevalue>/</replacevalue>
</replace>

<mkdir dir="${yfs_home}/extn" />
<jar jarfile="${yfs_home}/extn/yfsdbextn.jar" basedir="${tmp}/build" />
<antcall target="clean-tmp" />

</target>

<target name="ui-extn" >
<antcall target="clean-tmp" />
<mkdir dir="${yfs_home}/extn/ui" />

<foreach propertyname="zipfilename" targetname="unzip" >
<fileset dir="${yfs_home}/extn/ui" >
<patternset >
<include name="*.jar"/>
<include name="*.zip"/>
<exclude name="*ui.jar"/>
</patternset>
</fileset>
<property name="dir" value="${yfs_home}/extn/ui" />
</foreach>

<jar jarfile="${yfs_home}/webpages/yfscommon/yfsextn.jar" basedir="${tmp}" />
<antcall target="clean-tmp" />
</target>
<target name="db2-locale-script" description="Creates localized columns sql script for DB2">
<java fork="true" classname="com.yantra.tools.entityguru.generator.EntityGenerator">
<arg value="-LS"/>
<arg value="Y"/>
<arg value="-ED"/>
<arg value="${yfs_home}/database/entities/"/>
<arg value="-DB"/>
<arg value="db2"/>
<arg value="-DT"/>
<arg value="${yfs_home}/template/api/YFSDataTypes.xml"/>
<arg value="-H"/>
<arg value="${yfs_home}"/>
<classpath refid="yantra.class.path"/>
</java>
</target>

<target name="oracle-locale-script" description="Creates localized columns sql script for Oracle">
<java fork="true" classname="com.yantra.tools.entityguru.generator.EntityGenerator">
<arg value="-LS"/>
<arg value="Y"/>
<arg value="-ED"/>
<arg value="${yfs_home}/database/entities/"/>
& lt;arg value="-DB"/>
<arg value="oracle"/>
<arg value="-DT"/>
<arg value="${yfs_home}/template/api/YFSDataTypes.xml"/>
<arg value="-H"/>
<arg value="${yfs_home}"/>
<classpath refid="yantra.class.path"/>
</java>
</target>
</project>

[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

PRI49534

Product Synonym

[<p><b>]Fact[</b><p>];

Document Information

Modified date:
16 June 2018

UID

swg21527716