You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by am...@apache.org on 2013/01/15 03:04:25 UTC
svn commit: r1433257 - in /airavata/trunk: ./ modules/distribution/
modules/distribution/xbaya-gui-jnlp/
modules/distribution/xbaya-gui-jnlp/src/main/java/
modules/distribution/xbaya-gui-jnlp/src/main/java/org/
modules/distribution/xbaya-gui-jnlp/src/m...
Author: amilaj
Date: Tue Jan 15 02:04:24 2013
New Revision: 1433257
URL: http://svn.apache.org/viewvc?rev=1433257&view=rev
Log:
Properly fixing jnlp build
Added:
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/jnlp/
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/jnlp/Main.java
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jks (with props)
airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jnlp
Modified:
airavata/trunk/modules/distribution/pom.xml
airavata/trunk/modules/distribution/xbaya-gui-jnlp/pom.xml
airavata/trunk/pom.xml
Modified: airavata/trunk/modules/distribution/pom.xml
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/distribution/pom.xml?rev=1433257&r1=1433256&r2=1433257&view=diff
==============================================================================
--- airavata/trunk/modules/distribution/pom.xml (original)
+++ airavata/trunk/modules/distribution/pom.xml Tue Jan 15 02:04:24 2013
@@ -32,6 +32,7 @@
<module>airavata-server</module>
<module>airavata-client</module>
<module>xbaya-gui</module>
+ <module>xbaya-gui-jnlp</module>
</modules>
</profile>
</profiles>
Modified: airavata/trunk/modules/distribution/xbaya-gui-jnlp/pom.xml
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/distribution/xbaya-gui-jnlp/pom.xml?rev=1433257&r1=1433256&r2=1433257&view=diff
==============================================================================
--- airavata/trunk/modules/distribution/xbaya-gui-jnlp/pom.xml (original)
+++ airavata/trunk/modules/distribution/xbaya-gui-jnlp/pom.xml Tue Jan 15 02:04:24 2013
@@ -1,459 +1,143 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under
- the Apache License, Version 2.0 (theà "License"); you may not use this file except in compliance with the License. You may
- obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to
- in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
- ANY ~ KIND, either express or implied. See the License for the specific language governing permissions and limitations under
+<!--Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under
+ the Apache License, Version 2.0 (theà "License"); you may not use this file except in compliance with the License. You may
+ obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to
+ in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
+ ANY ~ KIND, either express or implied. See the License for the specific language governing permissions and limitations under
the License. -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
- <!--
- TODO: This is not the best way to create the JNLP. Due to some reason when we refer to a parent pom file
- JNLP does not include appropriated jar files. Therefore we have remove referring to parent pom file.
- We need to fix this in future as this duplicates lot of artifact information.
- -->
+ <parent>
+ <groupId>org.apache.airavata</groupId>
+ <artifactId>distribution</artifactId>
+ <version>0.6-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
<modelVersion>4.0.0</modelVersion>
- <artifactId>airavata-xbaya-gui-jnlp</artifactId>
- <groupId>org.apache.airavata</groupId>
- <name>Airavata xbaya-gui JNLP distribution</name>
- <version>0.6-SNAPSHOT</version>
+ <artifactId>airavata-xbaya-jnlp-distribution</artifactId>
+ <name>Airavata xbaya JNLP distribution</name>
<packaging>jar</packaging>
<url>http://airavata.apache.org/</url>
- <repositories>
-
- <repository>
- <id>central</id>
- <name>Maven Central</name>
- <url>http://repo1.maven.org/maven2</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <name>ogce.m2.all</name>
- <id>ogce.m2.all</id>
- <url>http://community.ucs.indiana.edu:9090/archiva/repository/ogce.m2.all</url>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>m2-snapshot-repository</id>
- <url>http://people.apache.org/repo/m2-snapshot-repository</url>
- <releases>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>unicore.eu</id>
- <name>UNICORE repository</name>
- <url>http://unicore-dev.zam.kfa-juelich.de/maven</url>
- </repository>
- </repositories>
-
-
- <!-- Edit the following properties. -->
- <profiles>
- <profile>
- <id>standalone</id>
- <activation>
- <activeByDefault>true</activeByDefault>
- </activation>
- <properties>
- <trustedCertsLocation>${project.home}/certificates/
- </trustedCertsLocation>
- <ssl.trustedCertsFile>${trustedCertsLocation}</ssl.trustedCertsFile>
- <build.scope>provided</build.scope>
- <build.jsf>compile</build.jsf>
-
- <!-- JNLP Properties -->
- <!-- Deployment Information -->
- <jnlpURLPrefix>http://localhost/airavata-xbaya</jnlpURLPrefix>
- <jnlpFileName>xbaya.jnlp</jnlpFileName>
-
- <registryEPR>
- http://localhost:8090/rmi
- </registryEPR>
-
- </properties>
- </profile>
-
- <profile>
- <id>collective</id>
- <activation>
- <file>
- <exists>betacollective</exists>
- </file>
- </activation>
- <properties>
- <!-- Inherited from the parent in this collective build. -->
- <ssl.trustedCertsFile>${trustedCertsLocation}</ssl.trustedCertsFile>
- <build.scope>provided</build.scope>
- <build.jsf>compile</build.jsf>
- </properties>
- </profile>
- </profiles>
-
<build>
<plugins>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>webstart-maven-plugin</artifactId>
- <version>1.0-beta-3</version>
+ <artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
- <phase>install</phase>
+ <id>copy-xbaya</id>
+ <phase>initialize</phase>
+ <configuration>
+ <target>
+ <taskdef resource="net/sf/antcontrib/antcontrib.properties"
+ classpathref="maven.dependency.classpath" />
+ <unzip src="../xbaya-gui/target/apache-airavata-xbaya-gui-${project.version}-bin.zip"
+ dest="${project.build.directory}/temp"/>
+ <mkdir dir="${jnlp.direcotry}"/>
+ <mkdir dir="${jnlp.direcotry}/lib"/>
+ <copy todir="${jnlp.direcotry}/lib">
+ <fileset dir="${xbaya.directory}/lib"/>
+ </copy>
+ <copy file="${project.basedir}/src/main/resources/xbaya.jnlp" todir="${jnlp.direcotry}"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jarsigner-plugin</artifactId>
+ <version>1.2</version>
+ <executions>
+ <execution>
+ <id>sign</id>
+ <phase>compile</phase>
<goals>
- <goal>jnlp</goal>
+ <goal>sign</goal>
</goals>
</execution>
</executions>
<configuration>
- <jnlp>
- <inputTemplate>src/main/resources/xbaya-jnlp-template.vm</inputTemplate>
- <outputFile>${jnlpFileName}</outputFile>
- <mainClass>org.apache.airavata.xbaya.XBaya</mainClass>
- </jnlp>
- <libPath>lib</libPath>
- <sign>
- <keystore>${basedir}/target/keystore</keystore>
- <keypass>xbaya-secret</keypass>
- <storepass>xbaya-secret</storepass>
- <alias>xbaya</alias>
- <validity>365</validity>
-
- <dnameCn>Airavata</dnameCn>
- <dnameOu>Apache</dnameOu>
- <dnameO>Apache Software Foundation</dnameO>
-
- <keystoreConfig>
- <delete>true</delete>
- <gen>true</gen>
- </keystoreConfig>
- </sign>
- <verifyjar>true</verifyjar>
-
+ <archiveDirectory>${jnlp.direcotry}/lib</archiveDirectory>
+ <keystore>${project.basedir}/src/main/resources/xbaya.jks</keystore>
+ <alias>xbaya</alias>
+ <storepass>xbaya-secret</storepass>
+ <keypass>xbaya-secret</keypass>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>exec-maven-plugin</artifactId>
+ <version>1.1.1</version>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>java</goal>
+ </goals>
+ <configuration>
+ <mainClass>org.apache.airavata.distribution.xbaya.jnlp.Main</mainClass>
+ <arguments>
+ <argument>${jnlp.direcotry}/lib</argument>
+ <argument>${jnlp.direcotry}/xbaya.jnlp</argument>
+ </arguments>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>zip-xbaya-jnlp</id>
+ <phase>install</phase>
+ <configuration>
+ <target>
+ <zip destfile="${project.build.directory}/xbaya-jnlp-${project.version}.zip"
+ basedir="${jnlp.direcotry}"
+ />
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
</plugins>
</build>
<dependencies>
- <dependency>
- <groupId>xpp3</groupId>
- <artifactId>xpp3_xpath</artifactId>
- <version>${xpp3.version}</version>
- </dependency>
- <dependency>
- <groupId>xpp3</groupId>
- <artifactId>xpp3</artifactId>
- <version>${xpp3.version}</version>
- </dependency>
- <dependency>
- <groupId>xpp5</groupId>
- <artifactId>xpp5</artifactId>
- <version>1.2.6</version>
- </dependency>
- <dependency>
- <groupId>xpp5</groupId>
- <artifactId>xpp5_xpath</artifactId>
- <version>1.2.6</version>
- </dependency>
- <dependency>
- <groupId>xsul5-ogce</groupId>
- <artifactId>xsul5-2007-02-27</artifactId>
- <version>1</version>
- </dependency>
- <dependency>
- <groupId>gpel</groupId>
- <artifactId>gpel_client</artifactId>
- <version>1.0.7-BETA</version>
- </dependency>
- <dependency>
- <groupId>atomixmiser</groupId>
- <artifactId>atomixmiser</artifactId>
- <version>0.9.4</version>
- </dependency>
- <dependency>
- <groupId>commons-httpclient</groupId>
- <artifactId>commons-httpclient</artifactId>
- <version>3.1</version>
- </dependency>
- <dependency>
- <groupId>commons-codec</groupId>
- <artifactId>commons-codec</artifactId>
- <version>1.3</version>
- </dependency>
- <dependency>
- <groupId>xutil</groupId>
- <artifactId>xutil</artifactId>
- <version>0.2</version>
- </dependency>
- <dependency>
- <groupId>jython</groupId>
- <artifactId>jython</artifactId>
- <version>2.5.1</version>
- </dependency>
- <dependency>
- <groupId>cog-jglobus</groupId>
- <artifactId>cog-jglobus</artifactId>
- <version>1.8.0_1</version>
- </dependency>
- <dependency>
- <groupId>xsul</groupId>
- <artifactId>xsul</artifactId>
- <version>2.10.5_d</version>
- </dependency>
- <dependency>
- <groupId>xmlbeans</groupId>
- <artifactId>xbean</artifactId>
- <version>${xmlbeans.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.axis2</groupId>
- <artifactId>axis2-adb</artifactId>
- <version>${axis2.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.axis2</groupId>
- <artifactId>axis2-kernel</artifactId>
- <version>${axis2.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.ws.commons.axiom</groupId>
- <artifactId>axiom-api</artifactId>
- <version>1.2.8</version>
- </dependency>
- <dependency>
- <groupId>org.apache.ws.commons.axiom</groupId>
- <artifactId>axiom-impl</artifactId>
- <version>1.2.8</version>
- </dependency>
<dependency>
- <groupId>org.apache.ws.commons.axiom</groupId>
- <artifactId>axiom-dom</artifactId>
- <version>1.2.8</version>
+ <groupId>ant-contrib</groupId>
+ <artifactId>ant-contrib</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
- <groupId>org.apache.ws.commons.schema</groupId>
- <artifactId>XmlSchema</artifactId>
- <version>1.4.2</version>
- </dependency>
- <dependency>
- <groupId>org.apache.neethi</groupId>
- <artifactId>neethi</artifactId>
- <version>2.0.4</version>
- </dependency>
- <dependency>
- <groupId>org.apache.axis2</groupId>
- <artifactId>axis2-transport-local</artifactId>
- <version>${axis2.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.axis2</groupId>
- <artifactId>axis2-transport-http</artifactId>
- <version>${axis2.version}</version>
- </dependency>
-
- <!-- AMAZON STUFFS -->
- <dependency>
- <groupId>com.amazonaws</groupId>
- <artifactId>aws-java-sdk</artifactId>
- <version>1.3.20</version>
- </dependency>
- <dependency>
- <groupId>amazon</groupId>
- <artifactId>MapReduce.Service.Client</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>net.java.dev.jets3t</groupId>
- <artifactId>jets3t</artifactId>
- <version>0.8.0</version>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant-nodeps</artifactId>
+ <version>1.8.1</version>
</dependency>
+ </dependencies>
- <!-- AIRAVATA modules -->
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-xbaya-gui</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-workflow-model-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-workflow-model-component</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-message-monitor</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-client-api</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-message-broker</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-common-utils</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-workflow-tracking</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-jpa-registry</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-registry-api</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-rest-client</artifactId>
- <version>${project.version}</version>
- </dependency>
- <!-- JCR Support -->
- <!-- TODO need clean up -->
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-gfac-schema-utils</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-gfac-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>1.7.2</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>jcl-over-slf4j</artifactId>
- <version>1.7.2</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <version>1.7.2</version>
- </dependency>
- <dependency>
- <groupId>javax.jcr</groupId>
- <artifactId>jcr</artifactId>
- <version>${jcr.version}</version>
- </dependency>
- <dependency>
- <groupId>globus</groupId>
- <artifactId>transfer-api-client</artifactId>
- <version>0.10</version>
- </dependency>
- <dependency>
- <groupId>org.apache.airavata</groupId>
- <artifactId>airavata-workflow-execution-context</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derbyclient</artifactId>
- <version>${derby.version}</version>
- </dependency>
- <dependency>
- <groupId>xerces</groupId>
- <artifactId>xercesImpl</artifactId>
- <version>2.9.1</version>
- </dependency>
- <dependency>
- <groupId>org.codehaus.jackson</groupId>
- <artifactId>jackson-mapper-asl</artifactId>
- <version>1.9.2</version>
- </dependency>
- <dependency>
- <groupId>org.codehaus.jackson</groupId>
- <artifactId>jackson-xc</artifactId>
- <version>1.9.2</version>
- </dependency>
- <dependency>
- <groupId>org.codehaus.jackson</groupId>
- <artifactId>jackson-jaxrs</artifactId>
- <version>1.9.2</version>
- </dependency>
- <dependency>
- <groupId>org.codehaus.jackson</groupId>
- <artifactId>jackson-core-asl</artifactId>
- <version>1.9.2</version>
- </dependency>
- <dependency>
- <groupId>com.sun.jersey</groupId>
- <artifactId>jersey-servlet</artifactId>
- <version>${jersey.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.jersey</groupId>
- <artifactId>jersey-json</artifactId>
- <version>${jersey.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.jersey.contribs</groupId>
- <artifactId>jersey-multipart</artifactId>
- <version>${jersey.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.jersey</groupId>
- <artifactId>jersey-client</artifactId>
- <version>${jersey.version}</version>
- </dependency>
- <dependency>
- <groupId>com.sun.jersey</groupId>
- <artifactId>jersey-core</artifactId>
- <version>${jersey.version}</version>
- </dependency>
-
- </dependencies>
<properties>
- <jersey.version>1.13</jersey.version>
- <grizzly.version>2.0.0-M3</grizzly.version>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <archieve.name>apache-airavata-xbaya-gui</archieve.name>
- <used.axis2.release>${axis2.version}</used.axis2.release>
+ <xbaya.directory>${project.build.directory}/temp/apache-airavata-xbaya-gui-${project.version}</xbaya.directory>
+ <jnlp.direcotry>${project.build.directory}/jnlp</jnlp.direcotry>
- <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
- <axis2.version>1.5.1</axis2.version>
- <derby.version>10.9.1.0</derby.version>
- <org.slf4j.version>1.7.2</org.slf4j.version>
- <axiom.version>1.2.8</axiom.version>
- <surefire.version>2.12</surefire.version>
- <jcr.version>2.0</jcr.version>
- <xmlbeans.version>2.5.0</xmlbeans.version>
- <xpp3.version>1.1.3_7</xpp3.version>
</properties>
</project>
Added: airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/jnlp/Main.java
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/jnlp/Main.java?rev=1433257&view=auto
==============================================================================
--- airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/jnlp/Main.java (added)
+++ airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/java/org/apache/airavata/distribution/xbaya/jnlp/Main.java Tue Jan 15 02:04:24 2013
@@ -0,0 +1,137 @@
+package org.apache.airavata.distribution.xbaya.jnlp;
+
+import java.io.*;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * This class will go through lib directory and creates the jnlp configuration file.
+ */
+public class Main {
+
+ private static final String CONFIGURATION_ELEMENT = "DEPENDENT_JARS";
+
+ public static void main(String[] args) {
+
+ if (args.length != 2) {
+ System.err.println("[ERROR] JNLP creator must be given with lib directory of Xbaya and JNLP template location.");
+ System.exit(-1);
+ }
+
+ String libDirectory = args[0];
+ String jnlpTemplateFile = args[1];
+
+ System.out.println("[INFO] The lib directory is " + libDirectory);
+ System.out.println("[INFO] The jnlp file is " + jnlpTemplateFile);
+
+ File libDirectoryFile = new File(libDirectory);
+
+ if (!libDirectoryFile.exists()) {
+ System.err.println("[ERROR] Invalid lib directory given - " + libDirectory + ". Cannot add dependent jars");
+ System.exit(-1);
+ }
+
+ File jnlpFile = new File(jnlpTemplateFile);
+ if (!jnlpFile.canRead()) {
+ System.err.println("[ERROR] Unable to read given jnlp file - " + jnlpTemplateFile + ".");
+ System.exit(-1);
+
+ }
+
+ StringBuilder stringBuilder = new StringBuilder();
+
+ // Read all dependencies
+ for (File file : libDirectoryFile.listFiles(new JarFileFilter())) {
+ String line = "<jar href=\"lib/" + file.getName() + "\"/>";
+ stringBuilder.append(line);
+ stringBuilder.append("\n");
+ }
+
+ //System.out.println(stringBuilder.toString());
+ modifyConfigurations(jnlpFile, stringBuilder);
+
+
+ }
+
+ private static void modifyConfigurations(File jnlpFile, StringBuilder dependencies) {
+
+ List<String> lines = new ArrayList<String>();
+
+ // first, read the file and store the changes
+ BufferedReader in = null;
+ try {
+ in = new BufferedReader(new FileReader(jnlpFile));
+ } catch (FileNotFoundException e) {
+ System.err.println("[ERROR] Error occurred while reading the file. " + e.getMessage());
+ }
+
+
+ String line = null;
+ if (in != null) {
+ try {
+ line = in.readLine();
+ } catch (IOException e) {
+ System.err.println("[ERROR] Error occurred while reading the file. " + e.getMessage());
+ try {
+ in.close();
+ } catch (IOException e1) {
+ System.err.println("[ERROR] Error occurred while closing the file. " + e.getMessage());
+ }
+ }
+ }
+
+ try {
+ while (line != null) {
+
+ if (line.trim().startsWith(CONFIGURATION_ELEMENT)) {
+ line = line.replaceAll(CONFIGURATION_ELEMENT, dependencies.toString());
+ }
+ lines.add(line);
+ line = in.readLine();
+
+ }
+ } catch (IOException e) {
+ System.err.println("[ERROR] Error occurred while reading the file. " + e.getMessage());
+ } finally {
+ try {
+ if (in != null) {
+ in.close();
+ }
+ } catch (IOException e) {
+ System.err.println("[ERROR] Error occurred while closing the file. " + e.getMessage());
+ }
+ }
+
+
+ // now, write the file again with the changes
+ PrintWriter out = null;
+ try {
+ out = new PrintWriter(jnlpFile);
+ for (String l : lines) {
+ out.println(l);
+ out.flush();
+ }
+ } catch (FileNotFoundException e) {
+ System.err.println("[ERROR] Error occurred while writing back to the file. " + e.getMessage());
+ } finally {
+ if (out != null) {
+ out.flush();
+ out.close();
+ }
+ }
+
+ }
+
+ public static class JarFileFilter implements FilenameFilter {
+ String ext;
+
+ public JarFileFilter() {
+ this.ext = ".jar";
+ }
+
+ public boolean accept(File dir, String name) {
+ return name.endsWith(ext);
+ }
+ }
+
+}
Added: airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jks
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jks?rev=1433257&view=auto
==============================================================================
Binary file - no diff available.
Propchange: airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jks
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jnlp
URL: http://svn.apache.org/viewvc/airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jnlp?rev=1433257&view=auto
==============================================================================
--- airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jnlp (added)
+++ airavata/trunk/modules/distribution/xbaya-gui-jnlp/src/main/resources/xbaya.jnlp Tue Jan 15 02:04:24 2013
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<jnlp spec="1.0+"
+ codebase="http://localhost/airavata-xbaya/"
+ href="xbaya.jnlp">
+<information>
+ <title>XBaya</title>
+ <vendor>Apache Airavata</vendor>
+ <icon href="airavata-logo.png"/>
+ <offline-allowed/>
+</information>
+<security>
+ <all-permissions/>
+</security>
+<resources>
+ <j2se version="1.5+" java-vm-args="-Xmx1024m" />
+ <property name="log" value="org.apache.airavata.xbaya:ALL"/>
+ DEPENDENT_JARS
+
+</resources>
+<application-desc main-class="org.apache.airavata.xbaya.XBaya">
+
+</application-desc>
+</jnlp>
Modified: airavata/trunk/pom.xml
URL: http://svn.apache.org/viewvc/airavata/trunk/pom.xml?rev=1433257&r1=1433256&r2=1433257&view=diff
==============================================================================
--- airavata/trunk/pom.xml (original)
+++ airavata/trunk/pom.xml Tue Jan 15 02:04:24 2013
@@ -426,9 +426,9 @@
<module>samples/complex-math-service</module>
<module>samples/levenshtein-distance-service</module>
<module>modules/server</module>
- <module>modules/distribution</module>
<module>modules/test-suite</module>
<module>samples/airavata-client</module>
+ <module>modules/distribution</module>
<module>modules/integration-tests</module>
</modules>
</profile>