You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by mn...@apache.org on 2010/06/01 15:01:57 UTC
svn commit: r950053 [1/6] - in
/incubator/aries/trunk/samples-sandbox/wordassociation-sample: ./ target/
target/maven-shared-archive-resources/
target/maven-shared-archive-resources/META-INF/ wordassociation.api/
wordassociation.api/.settings/ wordasso...
Author: mnuttall
Date: Tue Jun 1 13:01:51 2010
New Revision: 950053
URL: http://svn.apache.org/viewvc?rev=950053&view=rev
Log: (empty)
Added:
incubator/aries/trunk/samples-sandbox/wordassociation-sample/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/createDB.sql
incubator/aries/trunk/samples-sandbox/wordassociation-sample/demoscript.html
incubator/aries/trunk/samples-sandbox/wordassociation-sample/pom.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/.plxarc
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/aries.osgi.version.txt
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.classpath
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.project
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.jdt.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.pde.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.wst.common.component
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.wst.common.project.facet.core.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/BundleContent/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/BundleContent/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/BundleContent/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/BundleContent/build.properties
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/pom.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/src/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/src/org/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/src/org/apache/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/src/org/apache/wordassociation/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/src/org/apache/wordassociation/AssociationRecorderService.java
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/src/org/apache/wordassociation/WordGetterService.java
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/.plxarc
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/aries.osgi.version.txt
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/org/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/org/apache/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/org/apache/wordassociation/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/org/apache/wordassociation/AssociationRecorderService.class (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/classes/org/apache/wordassociation/WordGetterService.class (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/maven-shared-archive-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/maven-shared-archive-resources/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/maven-shared-archive-resources/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/maven-shared-archive-resources/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/maven-shared-archive-resources/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/test-classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/test-classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/test-classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/test-classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/test-classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/test-classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/target/wordassociation.api-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/pom.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/src/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/src/main/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/src/main/filtered-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/src/main/filtered-resources/configuration/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/src/main/filtered-resources/configuration/config.ini
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/.plxarc
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/aries.osgi.version.txt
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/asm-all-3.2.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/cm-3.2.0-v20070116.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/commons-collections-3.2.1.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/commons-lang-2.5.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/commons-pool-1.5.4.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/configuration/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/configuration/config.ini
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/derby-10.5.3.0_1.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/geronimo-j2ee-connector_1.5_spec-2.0.0.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/geronimo-jpa_2.0_spec-1.0.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/geronimo-jta_1.1_spec-1.1.1.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/geronimo-transaction-2.1.3.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/maven-shared-archive-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/maven-shared-archive-resources/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/maven-shared-archive-resources/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/maven-shared-archive-resources/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/maven-shared-archive-resources/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/openjpa-2.0.0-beta3.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.application.api-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.application.install-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.application.management-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.application.runtime-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.application.utils-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.blueprint-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.jndi-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.jpa.api-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.jpa.blueprint.aries-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.jpa.container-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.jpa.container.context-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.transaction.blueprint-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.transaction.manager-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.transaction.wrappers-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.aries.util-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.felix.fileinstall-2.0.8.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/org.apache.servicemix.bundles.serp-1.13.1_2.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/osgi-3.5.0.v20090520.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/pax-logging-api-1.4.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/pax-logging-service-1.4.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/pax-web-extender-war-0.7.2.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/pax-web-jetty-bundle-0.7.2.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/pax-web-jsp-0.7.2.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/services-3.1.200-v20070605.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.assembly/target/wordassociation.datasource-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.classpath
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.project
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.settings/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.settings/org.eclipse.jdt.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.settings/org.eclipse.pde.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.settings/org.eclipse.wst.common.component
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/.settings/org.eclipse.wst.common.project.facet.core.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/OSGI-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/OSGI-INF/blueprint/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/OSGI-INF/blueprint/blueprint.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/BundleContent/build.properties
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/pom.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/.plxarc
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/aries.osgi.version.txt
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/OSGI-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/OSGI-INF/blueprint/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/classes/OSGI-INF/blueprint/blueprint.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/maven-shared-archive-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/maven-shared-archive-resources/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/maven-shared-archive-resources/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/maven-shared-archive-resources/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/maven-shared-archive-resources/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/test-classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/test-classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/test-classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/test-classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/test-classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/test-classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.datasource/target/wordassociation.datasource-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.classpath
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.externalToolBuilders/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.externalToolBuilders/JPA builder.launch
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.project
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/org.eclipse.jdt.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/org.eclipse.jpt.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/org.eclipse.pde.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/org.eclipse.wst.common.component
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/.settings/org.eclipse.wst.common.project.facet.core.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/pom.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/META-INF/persistence.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/OSGI-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/OSGI-INF/blueprint/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/OSGI-INF/blueprint/blueprint.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/build.properties
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/apache/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/apache/wordassociation/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/apache/wordassociation/jpa/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/apache/wordassociation/jpa/Association.java
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/apache/wordassociation/jpa/Recorder.java
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/src/org/apache/wordassociation/jpa/WordLister.java
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/.plxarc
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/aries.osgi.version.txt
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/META-INF/persistence.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/OSGI-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/OSGI-INF/blueprint/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/OSGI-INF/blueprint/blueprint.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/apache/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/apache/wordassociation/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/apache/wordassociation/jpa/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/apache/wordassociation/jpa/Association.class (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/apache/wordassociation/jpa/Recorder.class (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/classes/org/apache/wordassociation/jpa/WordLister.class (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/maven-shared-archive-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/maven-shared-archive-resources/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/maven-shared-archive-resources/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/maven-shared-archive-resources/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/maven-shared-archive-resources/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/test-classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/test-classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/test-classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/test-classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/test-classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/test-classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.jpa/target/wordassociation.jpa-0.2-incubating-SNAPSHOT.jar (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.classpath
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.project
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/.jsdtscope
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/org.eclipse.jdt.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/org.eclipse.pde.core.prefs
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/org.eclipse.wst.common.component
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/org.eclipse.wst.common.project.facet.core.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/org.eclipse.wst.jsdt.ui.superType.container
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/.settings/org.eclipse.wst.jsdt.ui.superType.name
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/WEB-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/WEB-INF/web.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/build.properties
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/WebContent/index.html
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/pom.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/src/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/src/org/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/src/org/apache/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/src/org/apache/wordassociation/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/src/org/apache/wordassociation/web/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/src/org/apache/wordassociation/web/AssociateWord.java
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/.plxarc
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/aries.osgi.version.txt
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/META-INF/MANIFEST.MF
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/WEB-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/WEB-INF/web.xml
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/build.properties
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/index.html
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/org/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/org/apache/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/org/apache/wordassociation/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/org/apache/wordassociation/web/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/classes/org/apache/wordassociation/web/AssociateWord.class (with props)
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/maven-shared-archive-resources/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/maven-shared-archive-resources/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/maven-shared-archive-resources/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/maven-shared-archive-resources/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/maven-shared-archive-resources/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/test-classes/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/test-classes/META-INF/
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/test-classes/META-INF/DEPENDENCIES
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/test-classes/META-INF/DISCLAIMER
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/test-classes/META-INF/LICENSE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/test-classes/META-INF/NOTICE
incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.web/target/wordassociation.web-0.2-incubating-SNAPSHOT.jar (with props)
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/createDB.sql
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/createDB.sql?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/createDB.sql (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/createDB.sql Tue Jun 1 13:01:51 2010
@@ -0,0 +1,4 @@
+connect 'jdbc:derby:wordassociationDB/;create=true';
+CREATE TABLE ASSOCIATION (word VARCHAR(255) NOT NULL, associated VARCHAR(255), PRIMARY KEY (word));
+DELETE FROM ASSOCIATION;
+exit;
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/demoscript.html
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/demoscript.html?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/demoscript.html (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/demoscript.html Tue Jun 1 13:01:51 2010
@@ -0,0 +1,694 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Demonstrating the Word Association application</title>
+<style type="text/css">
+body
+{
+font-family:"sans-serif";
+}
+.instruction
+{
+font-style: italic;
+
+}
+p.dialogue
+{
+}
+p.code
+{
+background-color:#e5e5e5;
+font-family:"Courier", "monospace";
+white-space:pre}
+p.field
+{
+font-family:"Courier", "monospace";
+}
+p.command
+{
+font-family: "Courier", "monospace";
+white-space: pre;
+font-weight: bold;
+}
+p.xml
+{
+font-family:"Courier", "monospace";
+color:green;
+white-space:pre;
+}
+h2
+{
+color:white;
+background-color:#003366;
+}
+</style>
+</head>
+<body>
+<h1>Demonstrating the Word Association application</h1>
+<p>
+The Word Association application shows a very simple
+example of a realistic
+application architecture. The intention is that it can be coded up
+from scratch in front of a live audience, rather than that it
+demonstrate best practices or more complex patterns. A reference
+copy of the finished application is included with these instructions.
+</p>
+
+<p>Things can go wrong in unexpected ways in live demos, so do have a
+practice run before trying to write the wordassociation application
+in front of other people. I've known of people who practice the live
+coding parts of their demos twenty times before a presentation, although
+that might be a bit too much preparation for most of us! The <a href="#troubleshooting">
+troubleshooting tips</a> may help debug common problems. A working copy of the application is provided
+for reference, so you can refer to it if things go slightly wrong, or swap
+in pre-built bundles for broken bundles if things go very wrong.
+</p>
+
+<p>Italicized text is instructions to the person giving the demo. Most
+of the rest of the text of this document is a sample script
+for a demo.</p>
+
+<h2>Pre-demo set-up</h2>
+<h3>Assembly set-up</h3>
+
+This should be done before starting the demo. Build the wordassociation.assembly
+project using maven. The target directory provides an assembly into which the wordassociation
+jars can be loaded and run.
+
+
+<h3>IDE set-up</h3>
+
+<h4>IBM Rational Tools for OSGi Applications</h4>
+<p>The instructions assume the free version of the IBM Rational Tools for OSGi Applications are being used. The demo will work fine without them, but some of the steps
+for project creation and project export will be different. Follow these <a href="http://www.ibm.com/developerworks/rational/downloads/10/rationaldevtoolsforosgiapplications.html">instructions for
+installing the tools</a>.
+</p>
+
+<h3>OpenJPA</h3>
+
+<p>
+If you're running in a JEE-5-application server, JPA entities will be automatically enhanced.
+We're just running in a little OSGi container, so we need to do that ourselves. This
+needs the full OpenJPA download. Download OpenJPA 2 from http://openjpa.apache.org/downloads.html.
+(When I tried the binary download zip wouldn't unpack, so I had to download the source
+distribution and build it.)
+</p>
+
+<p>Normally an ant task would be used to enhance the entities when building,
+but it can also be done
+ using
+an eclipse builder. It's not possible to set up the builder in advance, but it is possible to create some
+useful variables.
+
+</p>
+
+<p class="instruction">In your workspace, select Window→Preferences and navigate to Run/Debug→
+String substitution. Create two variables. Add a java_home variable which points to
+your Java 6 installation, and open_jpa_home which points to the root of the OpenJPA download.
+</p>
+
+<h3>Database set-up</h3>
+
+<p>This is also best done before starting the demo. The sql for the database is
+in the root directory of the wordassociation sample.
+</p>
+
+<p class="instruction">Run the following commands:
+</p>
+
+<p class="command">export CLASSPATH=$DERBY_INSTALL/lib/derby.jar:$DERBY_INSTALL/lib/derbytools.jar:.
+java org.apache.derby.tools.ij createDB.sql
+</p>
+
+<p>The wordassociation.assembly includes a datasource bundle already.
+This is a minor sleight-of-hand, but coding up the datasource
+in front of a live audience and ensuring it loads before the
+jpa bundle doesn't add much value pedagogically.
+</p>
+
+<p class="instruction">Add the datasource jar to the assembly and the config.ini
+</p>
+
+<p class="field">wordassociation.datasource_1.0.0.jar@start,\
+</p>
+
+<p>
+If using a different assembly it's important that the datasource needs to be started before the rest of the application.
+</p>
+
+<h3>Set-up verification</h3>
+
+<p>
+This demo involves a lot of live coding, so there is a possibility
+of things going wrong. In the event of demo accidents, it may be best
+to swap in the 'official' version of the problem jar. To confirm the
+official versions will work, and verify the assembly is correct, copy
+the *wordassociation* jars into the load directory of the wordassociation.assembly
+directory. Confirm that <a href=http://localhost:8080/wordassociation.web/AssociateWord>http://localhost:8080/wordassociation.web/AssociateWord</a>
+URL works.
+</p>
+
+
+<p>Don't forget to remove the official jars before the demo starts - but do
+keep them somewhere handy for emergencies.</p>
+
+<h2>The demo</h2>
+
+<h3>Setting the scene</h3>
+
+<p class="dialogue">We're going to write a web application which plays a game of
+word association with a user. The application has three components - there's a web
+front end, a back end which handles the data and persistence using JPA. We want the
+front end and back end to be loosely coupled, so there's a third component which is
+a set of shared APIs.
+</p>
+
+<p class="instruction">It can be helpful to show the following architecture diagram:</p>
+
+<img src="architecture.gif"></img>
+
+<h4>The OSGi console</h4>
+<p class="dialogue">
+Before we do anything else, we're going to launch our OSGi container.
+</p>
+
+<p class="command">
+java -jar osgi-3.5.0.v20090520.jar -clean -console
+</p>
+
+<p class="dialogue">The command ss lists the currently installed bundles.
+What we're running with here is a minimal set of bundles. We have an OSGi
+container, which is just a few jars, and then we have some Apache Geronimo jars
+to give us the JEE services we're going to be using like JPA and JTA. Then we have Apache Aries sitting
+on top of the OSGi container. Aries can also sit on top of a full JEE server, and
+that's probably a more typical way of using it. </p>
+
+<p>It should be possible to do the whole of the demo without restarting the OSGi console.</p>
+
+<h4>The IDE</h4>
+
+<p class="dialogue">What we need to do now is create the bundles which make up our application.
+A bundle is a jar which some extra-metadata, and so it's easy to create using your
+favourite IDE. Eclipse has lots of OSGi support, and there's also a set of free tools
+which have extra support for Aries, so I'll be using those, but all of this can easily
+be done in another IDE, with base eclipse, or on the command line for the very hardcore.</p>
+
+
+<p class="dialogue">We start off with a shared API. We want everything to be loosely coupled, so
+we'll have a bundle with interfaces.
+</p>
+
+<p class="instruction">Right click, <b>New→Other→OSGi→OSGi Bundle project</b>.
+Fill in the name wordassociation.api and click Finish.
+</p>
+
+<p class="dialogue">We're going to play a game of word assocation,
+so we need a service that gives us a word to associate with.
+</p>
+
+<p class="instruction">Right click on the newly created project, do <b>New→Interface</b>, and
+</p>
+<p style="field">
+Package: org.apache.samples.wordassociation
+Name: WordGetterService.
+</p>
+Add the following method:
+
+<p class="code"> public String getRandomWord();
+</p>
+
+<p class="dialogue">We'll also want to do some sort of analysis on what associations people make, so
+ we'll add an association recorder service.
+</p>
+
+<p class="instruction">
+Right click on the newly created project, do <b>New→Interface</b>, and
+</p>
+<p style="field">
+Package: org.apache.samples.wordassociation
+Name: AssociationRecorderService.
+</p>
+
+<p class="instruction">Add the following method:
+</p>
+<p class="code"> public String recordAssociation(String word, String association);
+</p>
+
+<p class="dialogue">It's no use making a note of what associations have been made if we can't access
+ that data, so we'll add one more method:</p>
+
+<p class="code"> public String getLastAssociation(String word);
+</p>
+
+<p class="dialogue">The default in OSGi is for classes to be private to a bundle, but this is an API, so we
+declare that it's public. </p>
+
+<p class="instruction">Double-click on the manifest, click on the runtime tab, and click Add.
+Select the wordassociation package. Select manifest tab to show the change which has been made.</p>
+
+<p class="dialogue">Making that package visible externally is just a question of adding a line in the bundle manifest. </p>
+
+<h4>Export</h4>
+
+<p class="instruction">Finish off by exporting the bundle. Right click on
+the project, choose Export, and then navigate to OSGi→OSGi Bundle.
+Choose the load directory of your assembly for the export location
+and click Finish. Go back to the OSGi console and type ss again.
+The new bundle should have appeared in the framework. The GOAT
+tool could also be used to show the bundle appearing.</p>
+
+<h3>The web bundle</h3>
+
+<p class="dialogue">Now that we have our interfaces for our services,
+we're going to create our web front-end.</p>
+<p class="instruction">Make the project for the web front end. Right click, New→Other→OSGi→OSGi Bundle project.
+Fill in the name wordassociation.web
+Select 'OSGi Web Configuration' from the configuration drop-down.
+Click Finish.
+</p>
+
+<p class="instruction">
+Expand the Deployment Descriptor twistie.
+</p>
+<p class="instruction">Right-click on Servlets to create a new servlet.
+</p>
+<p class="instruction">Enter the following.
+</p>
+
+<p class="field">
+package name: org.apache.wordassociation.web
+<br/>
+class name: AssociateWord
+</p>
+
+<p class="dialogue">It will auto-create the servlet. </p>
+
+<p class="dialogue">There will be compile errors.
+This is the first point at which we're starting to see it's OSGi.
+Normally, we'd have to change the eclipse classpath to add the javax.servlet jar. Well, that's actually the second step. First of all we'd have to work out what
+ jar the HttpServlet class is in.
+ How many of you have got good at doing 'grep -r' on your system to figure out what jar a class is in?
+</p>
+
+<p class="dialogue">In this case, we just declare that we're have a dependency on the javax.servlet
+and javax.servlet.http packages. To do that, we open our manifest and enter it as a dependency. Eclipse will even give us content completion, but we can also enter it by hand on the manifest
+</p>
+<p class="instruction">Expand WebContent→META-INF→MANIFEST.MF and double click.
+Add the package to the top-right box on the dependencies tab.
+</p>
+
+<p class="dialogue">We're also going to want to use our api, so we'll add that dependency now too.
+</p>
+
+<p class="instruction">Click Add, enter *word* and select the wordassociation package.
+Switch tabs to show the change which has been made to the manifest.
+Then navigate back to the AssociateWord class
+</p>
+
+<p class="dialogue">We need to fill in some html boilerplate.
+</p>
+
+<p class="code"> PrintWriter out = response.getWriter();
+ out.println("<html>");
+ out.println("</html>");
+</p>
+
+<p class="dialogue">Let's add in the services we'll be using. </p>
+
+<p class="instruction">Add the following to the beginning of the class:
+</p>
+
+<p class="code"> private WordGetterService getter;
+ private AssociationRecorderService recorder;
+</p>
+
+<p class="instruction">Fill in the html to print out the random word:
+</p>
+
+<p class="code"> out.println("The word is " + getter.getRandomWord());
+ out.println("</br>");
+</p>
+
+<p class="dialogue">
+So do you think it's going to find its dependencies in JNDI at the moment? I don't think so either, so we better put some failsafes in.
+</p>
+
+<p class="instruction">Add guards around the getter dereference:</p>
+
+<p class="code"> if (getter != null)
+ {
+</p>
+and
+
+<p class="code"> } else
+ {
+ out.println("Oh dear. Our dependencies haven't been found.");
+ }
+</p>
+
+<p class="dialogue">When the user submits the form, we want to tell them what other things have
+been associated with that word.
+</p>
+<p class="instruction">
+Add the following content to the doPost() method:
+</p>
+<p class="code"> String word = request.getParameter("word");
+ String association = request.getParameter("association");
+ String person = request.getParameter("person");
+
+ String previousAssociation = null;
+ if (recorder != null) {
+ recorder.recordAssociation(word, association, person);
+ previousAssociation = recorder.getLastAssociation(word);
+ }
+ PrintWriter out = response.getWriter();
+ out.println("The last person associated " + word + " with "
+ + previousAssociation);
+</p>
+
+<p class="dialogue">There are three ways we can get our services. One is the normal OSGi way of looking them up in a bundle context. Aries adds the possibility of dependency injection,
+and also a JEE-integration which allows looking them up in JNDI.
+Blueprint dependencies can't be injected into a servlet, because a servlet
+is a JEE kind of artefact - this is the same as you get with spring,
+dependency injection doesn't work with spring. Instead we'll look them up in JNDI. This is
+the first thing we're doing which is specific to Aries. Normally you
+can have a JEE bundle, or you can have an OSGi bundle, but there's not
+much integration between the two. Here Aries is providing a compatibility
+layer between the servlet, which is managed by the JEE container, and
+all the great OSGi services we're going to want to use.</p>
+
+<p class="instruction">
+</p>
+
+<p class="dialogue">This is an OSGi bundle, and InitialContext isn't shipped as an OSGi bundle,
+so we need to add Import-Package: javax.naming. We could also use @Resource here.
+</p>
+
+<p class="instruction">Navigate back to the manifest and add a dependency
+on javax.naming.
+</p>
+
+<p class="code"> try {
+ getter = (WordGetterService) new InitialContext()
+ .lookup("aries:services/"
+ + WordGetterService.class.getName());
+ recorder = (AssociationRecorderService) new InitialContext()
+ .lookup("aries:services/"
+ + AssociationRecorderService.class.getName());
+ } catch (NamingException e) {
+ e.printStackTrace();
+ }
+</p>
+
+<p class="instruction">To export the bundle, right click and choose
+Export→War file. Browse to the assembly load directory and choose
+an archive name. Once the export is complete, typing ss in the OSGi
+console should show the bundle. Navigating to <a href="http://localhost:8080/wordassociation.web/AssociateWord">http://localhost:8080/wordassociation.web/AssociateWord</a>
+should bring up a web page that reports missing dependencies.
+
+<h3>The persistence</h3>
+
+<p class="instruction">Create another OSGi bundle project, and choose a JPA facet.
+</p>
+<p class="instruction">Click through until prompted to choose a library.
+</p>
+
+<p class="instruction">Create a library and add geronimo-jpa_2.0_spec-1.0.jar to the library. Accept the defaults for the other parameters and finish.
+</p>
+
+<p class="dialogue">This new project is going to implement the wordassociation
+services, so We need to add a dependency on the wordassociation API.
+</p>
+
+<p class="instruction">Navigate to the manifest, and add the package which comes up if you type *word* into the filter box.
+</p>
+
+<p class="dialogue">Note that *word* doesn't show any code from our web bundle, because we wanted to
+ keep that private.
+</p>
+
+<h4>Setting up the persistence</h4>
+
+<h4>Entity enhancement</h4>
+
+<p class="dialogue">If you're running in a JEE-5-application server, JPA entities will be automatically enhanced. We're just running in a little OSGi container, so we need to do that ourselves. Normally you'd use an ant task to enhance the entities, but we're running
+in Eclipse, so we'll add an eclipse builder.
+</p>
+
+<p class="instruction">Right-click on the project, select Properties, choose Builders,
+then New. Choose 'Program'. Move to the Location field, click the Variables button,
+and select the java_home variable you created earlier. Fill in the full path to the java executable,
+as follows:</p>
+
+<p class="field">${java_home}/jre/bin.</p>
+
+<p class="instruction">Fill in the following for the arguments, again selecting from the variables list when
+needed:</p>
+
+<p class="field">-cp ${open_jpa_home}/openjpa-all-2.0.0.jar:${build_project}/src org.apache.openjpa.enhance.PCEnhancer ${build_files}</p>
+
+<p class="instruction">You should see the following message in the console following each build:
+</p>
+<p class="field" style="color: red;">132 wordassociation.jpa INFO [main] openjpa.Tool - No targets were given. Running on all classes in your persistent classes list, or all metadata files in classpath directories if you have not listed your persistent classes. Use -help to display tool usage information.
+</p>
+
+<h4>Defining the entity</h4>
+
+<p class="instruction">Create a new class called Association. Add 'word' and 'associated' fields. Righ
+t click and choose <strong>Source→Generate getters and setters</strong>. Select both word and as
+sociation, and change the insertion point to 'last member'.
+</p>
+<p class="code"> private String word;
+ private String associated;
+</p>
+
+We will have compile errors until we map this to a persistence entity, by adding an @Entity annotation:
+
+<p class="code">@Entity(name = "ASSOCIATION")
+</p>
+
+<p class="instruction">Add a primary key for the word field:
+</p>
+<p class="code"> @Id
+ private String word;
+</p>
+
+
+<p class="dialogue">
+Now we get a compilation error, because we have a dependency on org.apache.openjpa.enhance.
+Normally we'd have to work out which jar this came from and add it to the classpath,
+and if we're sharing the project adding the jar to the classpath in a portable
+way is a bit of a nuisance. Instead we can just add the org.apache.openjpa.enhance package
+to our dependencies.
+</p>
+
+<p class="instruction">
+Navigate to the manifest and add an import-package for org.apache.openjpa.enhance.
+</p>
+
+<h4>Setting up the persistence</h4>
+
+<p class="instruction">
+Expand the newly created project, expand JPA content, and
+open persistence.xml. On the general tab, add the Association
+class, and make sure 'exclude unlisted classes' is selected.
+Navigate to the Connection tab and fill in the following:
+</p>
+<p class="field">aries:services/javax.sql.DataSource/(osgi.jndi.service.name=jdbc/wordassociation
+db)
+</p>
+
+<p class="dialogue">
+Here we're again making use of the JNDI integration Aries provides
+to point JPA at the JNDI mapping of a datasource we've defined
+as an OSGi service.
+</p>
+
+<p class="dialogue">
+We want to declare the services, and we do this by creating an xml
+file with the service definitions in it.
+</p>
+
+<p class="instruction">Create a blueprint.xml by New→Other→OSGi→blueprint.xml
+or right-clicking on the project and choosing <strong>OSGi→Create a new blueprint file</strong>
+</p>
+
+<p class="dialogue">
+We now need to fill in some namespaces manually, to indicate that we're
+not just going to be using this blueprint.xml for dependency injection -
+we're going to use to get integration with our transaction and persistence
+providers so that they get injected too. We do this by adding the following namespace to our blueprint xml:
+</p>
+
+<p class="xml">xmlns:jpa="http://aries.apache.org/xmlns/jpa/v1.0.0" xmlns:tx="http://aries.apache.org/xmlns/transactions/v1.0.0"
+</p>
+and the following to the bean definition for the recorder service:
+
+ <p class="xml"> <jpa:context property="entityManager" unitname="wordassociation.jpa" />
+</p>
+
+<p class="dialogue">The blueprint.xml file is one of the most important
+files in an Aries application. It's where we declare dependency injections,
+container-managed persistence, and container-managed transactions.
+It also allows us to create services declaratively. Normally an OSGi service
+would be registered at runtime, by Java code, but that doesn't
+have a very enterprise feel to it. What Aries allows us to do is
+register services declaratively in XML instead.</p>
+
+<p class="xml"> <service interface="org.apache.wordassociation.AssociationRecorderService"
+ ref="recorder" />
+ <bean class="org.apache.wordassociation.jpa.Recorder" id="recorder">
+ </bean>
+</p>
+
+<p class="instruction">Avoid the temptation to declare the bean inside
+the service. It saves typing but doesn't work when JPA is involved. Add
+in elements for the persistence and transactions to the recorder bean:</p>
+
+<p class="xml">
+ <bean class="org.apache.wordassociation.jpa.Recorder" id="recorder">
+ <jpa:context property="entityManager" unitname="wordassociation.jpa" />
+ <tx:transaction method="*" value="Required" />
+ </bean>
+</p>
+
+<p class="instruction">The unit name should match the one defined in persistence.xml.
+</p>
+
+
+<h4>Defining the recorder service</h4>
+
+<p class="instruction">Define a new class org.apache.wordassociation.jpa.Recorder which
+implements the AssociationRecorderService. Use the new class wizard to fill in
+stubs for the interface methods.
+
+</p>
+
+<p class="instruction">Create a field for the entity manager
+and right click, choose <strong>Source→Generate getters and setters</strong>
+and generate a setter (but no getter).</p>
+
+<p class="dialogue">
+The cool thing here is that we didn't have to do anything to initialize the
+JPA entity manager - it gets injected for us. Now we just need to fill in
+the logic to handle persisting our data.
+</p>
+
+<p class="instruction">Fill in the following contents for recordAssociation()
+</p>
+
+<p class="code"> Association found = em.find(Association.class, word);
+ if (found != null) {
+ found.setAssociated(association);
+ } else {
+ Association a = new Association();
+ a.setWord(word);
+ a.setAssociated(association);
+ em.persist(a);
+ }
+</p>
+
+<p class="code"> Association found = em.find(Association.class, word);
+ if (found != null) {
+ return found.getAssociated();
+ } else {
+ return "nothing";
+ }
+</p>
+
+
+
+<h4>The word lister</h4>
+
+<p class="dialogue">Finally, we need to provide a service which returns
+words to make the associations with. We could have this service backed by
+a database, but it would look pretty similar to the recorder service, so
+for testing we'll just use a static list instead.</p>
+
+<p class="instruction">Navigate back to the blueprint.xml and add
+a declaration for the service.</p>
+
+<p class="xml">
+ <service interface="org.apache.wordassociation.WordGetterService">
+ <bean class="org.apache.wordassociation.jpa.WordLister" />
+ </service>
+ </p>
+
+<p class="instruction">Create a WordLister class, have it implement WordGetterService in the class
+creation wizard and fill in the following content around the boiler-plate. You can ask
+the audience to supply the three words to keep them awake.</p>
+
+<p class="code">public class WordLister implements WordGetterService {
+ String[] words = { "computers", "Java", "coffee" };
+
+ public WordLister() {
+ }
+
+ @Override
+ public String getRandomWord() {
+ return words[new Random().nextInt(3)];
+ }
+
+</p>
+
+<h4>Exporting and testing</h4>
+
+<p class="instruction">Export the JPA bundle to the load directory.
+Revisiting the web application URL should bring up a web application
+which handles both prompting for a word association and
+telling users what previous users came up with. Making the associations
+should provide another opportunity for people in the audience to
+get involved by calling out word associations.</p>
+
+<h2>Extras</h2>
+
+<p>For a longer demo, consider some of the following.
+</p>
+
+<h3>Application assembly</h3>
+
+<p>If there's time, we can assemble our bundles into an application.
+The free tools provide support for this. Create a new project of type OSGi Enterprise
+Application, provide a name and choose Next, and then add the wordassociation bundles
+to it as a contained bundles and export.
+</p>
+
+<h3>Multiple lister services</h3>
+
+<p>We can add a second bundle with a different lister service and show how we can switch
+between the two bundles using the OSGi console.
+</p>
+
+<h2 id="troubleshooting">Common errors</h2>
+
+<ul>
+<li>Spelling 'association' 'assocation' or 'associaton' - or numerous other variants!</li>
+<li>Making a dependency on the bundle instead of the package</li>
+<li>Shortening package names. It's temping to use shorter package names while coding live. Doing this is risky
+ because it means the canned bundles can't be swapped in to replace bundles which don't work quite right after being coded in front of an audience.
+ </li>
+ <li>Split packages. If shorter package names are used, a different short package name must be used for each bundle or blueprint will struggle to resolve things.</li>
+<li>Forgetting build-time JPA enhancement. This leads to the following runtime error: ""This configuration disallows runtime optimization, but the following listed types were not enhanced at build time or at class load time with a javaagent".
+To resolve, make sure the OpenJPA plugin is installed in eclipse and add the
+ bytecode enhancer to the JPA project.</li>
+ <li>Anonymous beans for JPA services. Using an anonymous bean to define the Recorder service seems sensible, but it seems that it prevents proper container management of the transactions.</li>
+<li>Non-JTA data sources. Both JTA and non-JTA data sources need to be defined.</li>
+<li>""nonfatal general error: org.apache.openjpa.persistence.PersistenceException: Error extracting class information from "bundleresource://43.fwk1934652240/"." This error is
+caused by forgetting the following line from the persistence.xml (also available as checkbox on the General tab):
+<p class="xml"><exclude-unlisted-classes>true</exclude-unlisted-classes>
+
+</p>
+
+
+<li>Using the OpenJPA entity enhancement Eclipse plugin. The OpenJPA provide a plugin for Eclipse which
+automatically enhances entities, but it doesn't work very well, probably because it's
+built on OpenJPA 1.2. Add your own builder or use an ant task.</li>
+</ul>
+
+<p>If importing the existing projects into an Eclipse WTP/OSGi Application Tools
+installation, it's necessary to create an OpenJPA user library by navigating to <strong>Window→Preferences→Java→Build Path→User libraries</strong> and creating a new library called OpenJPA which includes the geronimo-jpa and org.apache.aries.jpa.container jars.
+</p>
+
+</body>
+</html>
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/pom.xml?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/pom.xml (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/pom.xml Tue Jun 1 13:01:51 2010
@@ -0,0 +1,77 @@
+<?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 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">
+
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.aries.samples</groupId>
+ <artifactId>samples</artifactId>
+ <version>0.2-incubating-SNAPSHOT</version>
+ </parent>
+
+ <groupId>wordassociation</groupId>
+ <artifactId>wordassociation</artifactId>
+ <name>Apache Aries wordassociation demo</name>
+ <packaging>pom</packaging>
+
+ <build>
+ <directory>target</directory>
+ <outputDirectory>target/classes</outputDirectory>
+ <sourceDirectory>src</sourceDirectory>
+ </build>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>wordassociation</groupId>
+ <artifactId>wordassociation.api</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <dependency>
+ <groupId>wordassociation</groupId>
+ <artifactId>wordassociation.assembly</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <dependency>
+ <groupId>wordassociation</groupId>
+ <artifactId>wordassociation.datasource</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <dependency>
+ <groupId>wordassociation</groupId>
+ <artifactId>wordassociation.jpa</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <dependency>
+ <groupId>wordassociation</groupId>
+ <artifactId>wordassociation.web</artifactId>
+ <version>${version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+
+ <modules>
+ <module>wordassociation.assembly</module>
+ <module>wordassociation.datasource</module>
+ <module>wordassociation.api</module>
+ <module>wordassociation.jpa</module>
+ <module>wordassociation.web</module>
+ </modules>
+
+</project>
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/.plxarc
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/.plxarc?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/.plxarc (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/.plxarc Tue Jun 1 13:01:51 2010
@@ -0,0 +1 @@
+maven-shared-archive-resources
\ No newline at end of file
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/aries.osgi.version.txt
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/aries.osgi.version.txt?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/aries.osgi.version.txt (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/aries.osgi.version.txt Tue Jun 1 13:01:51 2010
@@ -0,0 +1 @@
+aries.osgi.version.clean = 0.2.0.incubating-SNAPSHOT
\ No newline at end of file
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DEPENDENCIES
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DEPENDENCIES?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DEPENDENCIES (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DEPENDENCIES Tue Jun 1 13:01:51 2010
@@ -0,0 +1,11 @@
+// ------------------------------------------------------------------
+// Transitive dependencies of this project determined from the
+// maven pom organized by organization.
+// ------------------------------------------------------------------
+
+Apache Aries wordassociation demo
+
+
+
+
+
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DISCLAIMER
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DISCLAIMER?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DISCLAIMER (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/DISCLAIMER Tue Jun 1 13:01:51 2010
@@ -0,0 +1,10 @@
+Apache Aries wordassociation demo is an effort undergoing incubation at the Apache Software
+Foundation (ASF), sponsored by the Apache Incubator PMC.
+
+Incubation is required of all newly accepted projects until a further review
+indicates that the infrastructure, communications, and decision making process
+have stabilized in a manner consistent with other successful ASF projects.
+
+While incubation status is not necessarily a reflection of the completeness
+or stability of the code, it does indicate that the project has yet to be
+fully endorsed by the ASF.
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/LICENSE
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/LICENSE?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/LICENSE (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/LICENSE Tue Jun 1 13:01:51 2010
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed 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.
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/NOTICE
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/NOTICE?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/NOTICE (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/target/maven-shared-archive-resources/META-INF/NOTICE Tue Jun 1 13:01:51 2010
@@ -0,0 +1,8 @@
+
+Apache Aries wordassociation demo
+Copyright 2009-2010 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.classpath
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.classpath?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.classpath (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.classpath Tue Jun 1 13:01:51 2010
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
+ <attributes>
+ <attribute name="owner.project.facets" value="java"/>
+ </attributes>
+ </classpathentry>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.project
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.project?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.project (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.project Tue Jun 1 13:01:51 2010
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>wordassociation.api</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.common.project.facet.core.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.validation.validationbuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.jdt.core.prefs
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.jdt.core.prefs?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.jdt.core.prefs (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.jdt.core.prefs Tue Jun 1 13:01:51 2010
@@ -0,0 +1,8 @@
+#Sat May 15 00:22:31 CEST 2010
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.pde.core.prefs
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.pde.core.prefs?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.pde.core.prefs (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.pde.core.prefs Tue Jun 1 13:01:51 2010
@@ -0,0 +1,7 @@
+#Sat May 15 00:22:34 CEST 2010
+BUNDLE_ROOT_PATH=BundleContent
+eclipse.preferences.version=1
+pluginProject.extensions=false
+resolve.requirebundle=false
+manifest.exportWizard=com.ibm.etools.aries.bundle.export
+manifest.launchShortcuts=org.eclipse.wst.server.launchShortcut,org.eclipse.wst.server.launchShortcut
Added: incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.wst.common.component
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.wst.common.component?rev=950053&view=auto
==============================================================================
--- incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.wst.common.component (added)
+++ incubator/aries/trunk/samples-sandbox/wordassociation-sample/wordassociation.api/.settings/org.eclipse.wst.common.component Tue Jun 1 13:01:51 2010
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
+ <wb-module deploy-name="wordassociation.api">
+ <wb-resource deploy-path="/" source-path="/BundleContent"/>
+ <wb-resource deploy-path="/" source-path="/src"/>
+ </wb-module>
+</project-modules>
\ No newline at end of file