diff --git a/openbis/build/build.xml b/openbis/build/build.xml index 0f45f9f63becf8a69fa750e68391ab0d7fe8333d..d75a09cc23a8ba4e307f2f244dc0d7cf1f6db25c 100644 --- a/openbis/build/build.xml +++ b/openbis/build/build.xml @@ -148,6 +148,11 @@ </loadfile> <echo file="${server.dist}/tomcat-version.txt">${tomcat.version}</echo> <copy file="${original.openbis.server.dist}/server.xml" todir="${server.dist}" /> + <copy todir="${server.dist}" > + <fileset dir="${dist}"> + <include name="*client.jar"/> + </fileset> + </copy> <copy file="${original.server.dist}/service.properties" todir="${server.dist}" /> <copy file="${original.server.dist}/openbis.conf" todir="${server.dist}" /> <copy file="${original.openbis.server.dist}/openBIS.keystore" todir="${server.dist}" /> @@ -388,11 +393,41 @@ includes="ch/systemsx/cisd/openbis/BuildAndEnvironmentInfo.class" /> </jar> </target> + + <target name="client-jar" + description="Extracts from jar file only those classes need by a remote client"> + <antcall target="make-client-jar"> + <param name="variant" value="" /> + </antcall> + </target> + + <target name="make-client-jar" depends="jar" + description="Extracts from jar file only those classes need by a remote client"> + <jar destfile="${dist}/openbis${variant}-client.jar"> + <zipfileset src="${jar.file}"> + <include name="ch/systemsx/cisd/common/spring/HttpInvokerUtils.class"/> + <include name="ch/systemsx/cisd/common/exceptions/*.class"/> + <include name="**/shared/I*.class"/> + <include name="**/shared/basic/dto/*.class"/> + <include name="**/shared/basic/*.class"/> + <include name="**/shared/dto/*.class"/> + <exclude name="**/shared/dto/*PE.class"/> + <include name="**/shared/authorization/annotation/*.class"/> + <include name="**/shared/authorization/ISessionProvider.class"/> + <include name="**/BuildAndEnvironmentInfo.class"/> + <include name="${build.info.filename}" /> + </zipfileset> + <zipfileset src="${lib}/gwt2.0/gwt-user.jar"> + <include name="com/google/gwt/user/client/rpc/IsSerializable.class"/> + <include name="com/google/gwt/user/client/rpc/SerializableException.class"/> + </zipfileset> + </jar> + </target> <!-- // Creates WAR file. --> - <target name="war" depends="jar, compile-javascript" description="Creates project war file."> + <target name="war" depends="client-jar, compile-javascript" description="Creates project war file."> <mkdir dir="${webapp.dist.web-inf}" /> <copy todir="${webapp.dist.web-inf}"> <fileset dir="${application.server.resource}">