[rhq] Branch 'release-3.0.0' - 2 commits - modules/plugins
by ips
modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ApplicationServerComponent.java | 113 ++++------
modules/plugins/jboss-as-5/src/main/resources/META-INF/rhq-plugin.xml | 2
2 files changed, 54 insertions(+), 61 deletions(-)
New commits:
commit 968f756a62a0931ee7e1addd6c9041864a8db336
Merge: abc1adc... 5055dca...
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Wed Jun 30 18:44:06 2010 -0400
Merge branch 'release-3.0.0' of ssh://git.fedorahosted.org/git/rhq/rhq into release-3.0.0
commit abc1adc013a10a6b6d3a380be91ec12457c66524
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Wed Jun 30 18:42:59 2010 -0400
fix so "Partition Name" trait returns a non-null value for an EAP 5.0.x server running "production" config (https://bugzilla.redhat.com/show_bug.cgi?id=594520 )
diff --git a/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ApplicationServerComponent.java b/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ApplicationServerComponent.java
index e21153e..6b5dfa4 100644
--- a/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ApplicationServerComponent.java
+++ b/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ApplicationServerComponent.java
@@ -28,7 +28,6 @@ import java.io.Serializable;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -44,13 +43,10 @@ import org.jboss.deployers.spi.management.ManagementView;
import org.jboss.deployers.spi.management.deploy.ProgressEvent;
import org.jboss.deployers.spi.management.deploy.ProgressListener;
import org.jboss.managed.api.ComponentType;
-import org.jboss.managed.api.DeploymentTemplateInfo;
import org.jboss.managed.api.ManagedComponent;
-import org.jboss.managed.api.ManagedProperty;
import org.jboss.metatype.api.values.SimpleValue;
import org.jboss.on.common.jbossas.JBPMWorkflowManager;
import org.jboss.on.common.jbossas.JBossASPaths;
-import org.jboss.profileservice.spi.NoSuchDeploymentException;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -60,11 +56,7 @@ import org.mc4j.ems.connection.support.metadata.InternalVMTypeDescriptor;
import org.rhq.core.domain.content.transfer.DeployPackagesResponse;
import org.rhq.core.domain.content.transfer.RemovePackagesResponse;
import org.rhq.core.domain.configuration.Configuration;
-import org.rhq.core.domain.configuration.Property;
import org.rhq.core.domain.configuration.PropertySimple;
-import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
-import org.rhq.core.domain.configuration.definition.ConfigurationTemplate;
-import org.rhq.core.domain.configuration.definition.PropertyDefinition;
import org.rhq.core.domain.content.PackageType;
import org.rhq.core.domain.content.transfer.DeployPackageStep;
import org.rhq.core.domain.content.transfer.ResourcePackageDetails;
@@ -74,9 +66,6 @@ import org.rhq.core.domain.measurement.MeasurementDataNumeric;
import org.rhq.core.domain.measurement.MeasurementDataTrait;
import org.rhq.core.domain.measurement.MeasurementReport;
import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
-import org.rhq.core.domain.resource.CreateResourceStatus;
-import org.rhq.core.domain.resource.ResourceCreationDataType;
-import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.pluginapi.availability.AvailabilityCollectorRunnable;
import org.rhq.core.pluginapi.availability.AvailabilityFacet;
import org.rhq.core.pluginapi.configuration.ConfigurationFacet;
@@ -93,23 +82,15 @@ import org.rhq.core.pluginapi.inventory.ResourceContext;
import org.rhq.core.pluginapi.measurement.MeasurementFacet;
import org.rhq.core.pluginapi.operation.OperationFacet;
import org.rhq.core.pluginapi.operation.OperationResult;
-import org.rhq.plugins.jbossas5.adapter.api.PropertyAdapter;
-import org.rhq.plugins.jbossas5.adapter.api.PropertyAdapterFactory;
import org.rhq.plugins.jbossas5.connection.LocalProfileServiceConnectionProvider;
import org.rhq.plugins.jbossas5.connection.ProfileServiceConnection;
import org.rhq.plugins.jbossas5.connection.ProfileServiceConnectionProvider;
import org.rhq.plugins.jbossas5.connection.RemoteProfileServiceConnectionProvider;
-import org.rhq.plugins.jbossas5.deploy.Deployer;
-import org.rhq.plugins.jbossas5.deploy.LocalDeployer;
-import org.rhq.plugins.jbossas5.deploy.RemoteDeployer;
import org.rhq.plugins.jbossas5.helper.CreateChildResourceFacetDelegate;
import org.rhq.plugins.jbossas5.helper.JBossAS5ConnectionTypeDescriptor;
import org.rhq.plugins.jbossas5.helper.JmxConnectionHelper;
import org.rhq.plugins.jbossas5.helper.InPluginControlActionFacade;
-import org.rhq.plugins.jbossas5.util.ConversionUtils;
-import org.rhq.plugins.jbossas5.util.DebugUtils;
import org.rhq.plugins.jbossas5.util.ManagedComponentUtils;
-import org.rhq.plugins.jbossas5.util.ResourceComponentUtils;
import com.jboss.jbossnetwork.product.jbpm.handlers.ControlActionFacade;
@@ -125,13 +106,16 @@ public class ApplicationServerComponent implements ResourceComponent, ProfileSer
private static final Pattern METRIC_NAME_PATTERN = Pattern.compile("(.*)\\|(.*)\\|(.*)\\|(.*)");
- public static final Map<String, String> NEW_PROPERTY_NAMES = new HashMap<String, String>();
+ private static final Map<String, String> ALTERNATE_METRIC_NAMES = new HashMap<String, String>();
static {
- NEW_PROPERTY_NAMES.put("transactionCount", "numberOfTransactions");
- NEW_PROPERTY_NAMES.put("commitCount", "numberOfCommittedTransactions");
- NEW_PROPERTY_NAMES.put("rollbackCount", "numberOfApplicationRollbacks");
+ ALTERNATE_METRIC_NAMES.put("MCBean|JTA|*|transactionCount", "MCBean|JTA|*|numberOfTransactions");
+ ALTERNATE_METRIC_NAMES.put("MCBean|JTA|*|commitCount", "MCBean|JTA|*|numberOfCommittedTransactions");
+ ALTERNATE_METRIC_NAMES.put("MCBean|JTA|*|rollbackCount", "MCBean|JTA|*|numberOfApplicationRollbacks");
+ ALTERNATE_METRIC_NAMES.put("MCBean|ServerConfig|*|partitionName", "MCBean|HAPartition|*|partitionName");
}
+ private static final Map<String, String> VERIFIED_METRIC_NAMES = new HashMap<String, String>();
+
private final Log log = LogFactory.getLog(this.getClass());
private ResourceContext resourceContext;
@@ -244,59 +228,44 @@ public class ApplicationServerComponent implements ResourceComponent, ProfileSer
public void getValues(MeasurementReport report, Set<MeasurementScheduleRequest> requests) {
ManagementView managementView = getConnection().getManagementView();
for (MeasurementScheduleRequest request : requests) {
- String metricName = request.getName();
+ String requestName = request.getName();
+ String verifiedMetricName = VERIFIED_METRIC_NAMES.get(requestName);
+ String metricName = (verifiedMetricName != null) ? verifiedMetricName : requestName;
try {
- // All other metric names are expected to have the following syntax:
- // "<componentType>|<componentSubType>|<componentName>|<propertyName>"
- Matcher matcher = METRIC_NAME_PATTERN.matcher(metricName);
- if (!matcher.matches()) {
- log.error("Metric name '" + metricName + "' does not match pattern '" + METRIC_NAME_PATTERN + "'.");
- continue;
- }
- String componentCategory = matcher.group(1);
- String componentSubType = matcher.group(2);
- String componentName = matcher.group(3);
- String propertyName = matcher.group(4);
- ComponentType componentType = new ComponentType(componentCategory, componentSubType);
- ManagedComponent component;
- if (componentName.equals("*")) {
- component = ManagedComponentUtils.getSingletonManagedComponent(managementView, componentType);
- } else {
- component = ManagedComponentUtils.getManagedComponent(managementView, componentType, componentName);
- }
-
Serializable value = null;
boolean foundProperty = false;
try {
- value = ManagedComponentUtils.getSimplePropertyValue(component, propertyName);
+ value = getMetric(managementView, metricName);
foundProperty = true;
} catch (ManagedComponentUtils.PropertyNotFoundException e) {
- if (NEW_PROPERTY_NAMES.containsKey(propertyName)) {
- String newPropertyName = NEW_PROPERTY_NAMES.get(propertyName);
+ // ignore
+ }
+
+ if (value == null) {
+ metricName = ALTERNATE_METRIC_NAMES.get(metricName);
+ if (metricName != null) {
try {
- value = ManagedComponentUtils.getSimplePropertyValue(component, newPropertyName);
+ value = getMetric(managementView, metricName);
foundProperty = true;
- } catch (ManagedComponentUtils.PropertyNotFoundException e1) {
+ } catch (ManagedComponentUtils.PropertyNotFoundException e) {
// ignore
}
}
}
if (!foundProperty) {
- if (NEW_PROPERTY_NAMES.containsKey(propertyName)) {
- List<String> propertyNames = new ArrayList<String>(2);
- propertyNames.add(propertyName);
- propertyNames.add(NEW_PROPERTY_NAMES.get(propertyName));
- log.error("Property with one of the following names was not found for ManagedComponent ["
- + component + "]: " + propertyNames);
- } else {
- log.error("Property '" + propertyName + "' was not found for ManagedComponent ["
- + component + "].");
+ List<String> propertyNames = new ArrayList<String>(2);
+ propertyNames.add(requestName);
+ if (ALTERNATE_METRIC_NAMES.containsKey(requestName)) {
+ propertyNames.add(ALTERNATE_METRIC_NAMES.get(requestName));
}
- continue;
+ throw new IllegalStateException("A property was not found with any of the following names: "
+ + propertyNames);
}
- if (value == null) {
+ if (value != null) {
+ VERIFIED_METRIC_NAMES.put(requestName, metricName);
+ } else {
log.debug("Null value returned for metric '" + metricName + "'.");
continue;
}
@@ -308,7 +277,7 @@ public class ApplicationServerComponent implements ResourceComponent, ProfileSer
report.addData(new MeasurementDataTrait(request, value.toString()));
}
} catch (RuntimeException e) {
- log.error("Failed to obtain metric '" + metricName + "'.", e);
+ log.error("Failed to obtain metric '" + requestName + "'.", e);
}
}
}
@@ -550,4 +519,28 @@ public class ApplicationServerComponent implements ResourceComponent, ProfileSer
}
return configPath;
}
+
+ private static Serializable getMetric(ManagementView managementView, String metricName)
+ throws ManagedComponentUtils.PropertyNotFoundException {
+ // All metric names are expected to have the following syntax:
+ // "<componentType>|<componentSubType>|<componentName>|<propertyName>"
+ Matcher matcher = METRIC_NAME_PATTERN.matcher(metricName);
+ if (!matcher.matches()) {
+ throw new IllegalStateException("Metric name '" + metricName + "' does not match pattern '"
+ + METRIC_NAME_PATTERN + "'.");
+ }
+ String componentCategory = matcher.group(1);
+ String componentSubType = matcher.group(2);
+ String componentName = matcher.group(3);
+ String propertyName = matcher.group(4);
+ ComponentType componentType = new ComponentType(componentCategory, componentSubType);
+ ManagedComponent component;
+ if (componentName.equals("*")) {
+ component = ManagedComponentUtils.getSingletonManagedComponent(managementView, componentType);
+ } else {
+ component = ManagedComponentUtils.getManagedComponent(managementView, componentType, componentName);
+ }
+
+ return ManagedComponentUtils.getSimplePropertyValue(component, propertyName);
+ }
}
diff --git a/modules/plugins/jboss-as-5/src/main/resources/META-INF/rhq-plugin.xml b/modules/plugins/jboss-as-5/src/main/resources/META-INF/rhq-plugin.xml
index b470905..ea8ff2d 100644
--- a/modules/plugins/jboss-as-5/src/main/resources/META-INF/rhq-plugin.xml
+++ b/modules/plugins/jboss-as-5/src/main/resources/META-INF/rhq-plugin.xml
@@ -1084,7 +1084,7 @@
<results><c:simple-property name="operationResult" description="Outcome of restarting the server."/></results>
</operation>
- <metric displayName="Partition Name" property="MCBean|ServerConfig|*|partitionName"
+ <metric displayName="Cluster Partition Name" property="MCBean|ServerConfig|*|partitionName"
dataType="trait" displayType="summary"
description="the name of the cluster partition this server belongs to"/>
13Â years, 5Â months
[rhq] Branch 'release-3.0.0' - modules/enterprise
by Simeon Pinder
modules/enterprise/server/plugins/jboss-software/src/main/java/org/rhq/enterprise/server/plugins/jboss/software/JBossSoftwareContentSourceAdapter.java | 21 +++++++++-
1 file changed, 19 insertions(+), 2 deletions(-)
New commits:
commit 5055dca9b0d0bfde336be48704d50628663bd804
Author: Simeon Pinder <spinder(a)redhat.com>
Date: Wed Jun 30 18:06:30 2010 -0400
BZ:607799 modifed content source to detect redirects, reinitialize and log occurrence.
diff --git a/modules/enterprise/server/plugins/jboss-software/src/main/java/org/rhq/enterprise/server/plugins/jboss/software/JBossSoftwareContentSourceAdapter.java b/modules/enterprise/server/plugins/jboss-software/src/main/java/org/rhq/enterprise/server/plugins/jboss/software/JBossSoftwareContentSourceAdapter.java
index 788961e..2758e2b 100644
--- a/modules/enterprise/server/plugins/jboss-software/src/main/java/org/rhq/enterprise/server/plugins/jboss/software/JBossSoftwareContentSourceAdapter.java
+++ b/modules/enterprise/server/plugins/jboss-software/src/main/java/org/rhq/enterprise/server/plugins/jboss/software/JBossSoftwareContentSourceAdapter.java
@@ -23,8 +23,6 @@ import java.net.URI;
import java.net.URL;
import java.util.Collection;
-import javax.xml.parsers.ParserConfigurationException;
-
import churchillobjects.rss4j.RssDocument;
import churchillobjects.rss4j.parser.RssParser;
@@ -216,8 +214,27 @@ public class JBossSoftwareContentSourceAdapter implements ContentProvider, Packa
// Perform the connection and capture its response XML
String rawFeed = null;
try {
+ //store off original url to detect forwarding as 401 results otherwise
+ //url forwarding is true by default.
+ String originalUrl = method.getURI().getURI();
+
int status = client.executeMethod(method);
+ //Check to see if redirection has occurred
+ String currentUrl = method.getURI().getURI();
+ //if redirection has occurred, reconnect with correct address.
+ if (!originalUrl.trim().equalsIgnoreCase(currentUrl.trim())) {
+ method = new GetMethod(currentUrl);
+ method.setDoAuthentication(true);
+ if (username != null && password != null) {
+ UsernamePasswordCredentials upc = new UsernamePasswordCredentials(username, password);
+ client.getState().setCredentials("users", method.getHostConfiguration().getHost(), upc);
+ }
+ log.warn("Following redirect to [" + currentUrl
+ + "]. You may need to update your feed URL if redirect is permanent.");
+ status = client.executeMethod(method);
+ }
+
if (status == 404) {
throw new SyncException("Could not find the feed at URL [" + url
+ "]. Make sure the URL field correctly refers to the CSP feed location.");
13Â years, 5Â months
[rhq] Branch 'release-3.0.0' - 13 commits - etc/samples release.sh
by Jay Shaughnessy
etc/samples/provisioning/sample-cli/resources/sample-bundle-v1.zip |binary
etc/samples/provisioning/sample-cli/resources/sample-bundle-v2.zip |binary
etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js | 59 +++++
etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js | 102 ++++++++++
etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js | 83 ++++++++
etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js | 61 +++++
6 files changed, 305 insertions(+)
New commits:
commit 4cdf9b082af3a8298b5efd6b218475b190e1cba2
Merge: 41b640f... 68af83f...
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Wed Jun 30 15:24:54 2010 -0400
Merge branch 'release-3.0.0' into release-3.0.0-jay
Conflicts:
modules/enterprise/gui/portal-war/src/main/webapp/admin/config/GeneralPropertiesConfigForm.jsp
modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ManagedComponentComponent.java
release.sh
diff --cc release.sh
index 5ce7396,da56c27..da56c27
mode 100755,100755..100644
--- a/release.sh
+++ b/release.sh
commit 68af83f4b44a2c80f2e1ca31a031deb96bffe33b
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Wed Jun 30 15:22:48 2010 -0400
git is forcing this commit, i am just a pawn
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
new file mode 100644
index 0000000..b099286
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
@@ -0,0 +1,102 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * This sample script shows how to deploy a Bundle. It deploys the bundle created
+ * by the cli-1-createBundle.js script. The Bundle uses the Ant Bundle Type provided with
+ * RHQ.
+ * <pre>
+ *
+ * The deployment is to /tmp/sample-bundle.
+ *
+ * Prerequisites:
+ * 1) run cli-1-createBundle.js
+ * 2) At least one platform must be in inventory. If the "platforms" group does not exist it will
+ * be created with all imported platforms as members. The sample bundle will be deployed to the
+ * "platforms" group.
+ * 3) For successful deployment the RHQ Agents must be running on the "platforms" group platforms.
+ *
+ * Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/scripts/cli-2-deployBundle.js
+ * 4) validate the deployment and that the config settings are applied correctly
+ * </pre>
+ */
+
+var bundleName = 'sample-bundle';
+
+// get the bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName(bundleName);
+bc.fetchBundleVersions( true );
+var bundles = BundleManager.findBundlesByCriteria(bc);
+Assert.assertTrue( null != bundles && bundles.size() > 0 );
+var bundle = bundles.get(0);
+Assert.assertTrue( null != bundle.getBundleVersions() && bundle.getBundleVersions().size() == 1 );
+var bundleVersion = bundle.getBundleVersions().get(0);
+
+
+// Find or create the "platforms" group
+var rgc = new ResourceGroupCriteria();
+rgc.addFilterName("platforms"); // wINdows, lINux
+var groups = ResourceGroupManager.findResourceGroupsByCriteria(rgc);
+var groupId;
+// create if needed (and possible)
+if ( groups.isEmpty() ) {
+ var c = new ResourceCriteria();
+ c.addFilterResourceCategory(ResourceCategory.PLATFORM);
+ var platforms = ResourceManager.findResourcesByCriteria(c);
+ Assert.assertTrue( platforms.size() > 0 );
+
+ var rg = new ResourceGroup("platforms");
+ var platformSet = new java.util.HashSet();
+ platformSet.addAll( platforms );
+ rg.setExplicitResources(platformSet);
+ rg = ResourceGroupManager.createResourceGroup(rg);
+ groupId = rg.getId();
+} else {
+ groupId = groups.get(0).getId();
+}
+
+// create a destination for the deployment
+var dest = BundleManager.createBundleDestination(bundle.getId(), "sample destination", "sample destination", "/tmp/sample-bundle", groupId);
+
+// create a config for the V1.0 deployment, setting the required properties for recipe in distro 1.0
+var config1 = new Configuration();
+var property11 = new PropertySimple("sample.name", "V1 Name");
+config1.put( property11 );
+var property12 = new PropertySimple("sample.port", "11111");
+config1.put( property12 );
+
+
+// create a deployment for sample bundle 1.0 using the 1.0 config
+var deployment = BundleManager.createBundleDeployment(bundleVersion.getId(), dest.getId(), "Deploying Sample Ant Bundle V1", config1);
+deployment = BundleManager.scheduleBundleDeployment(deployment.getId(), true);
+Assert.assertNotNull( deployment, "Failed to create 1.0 deployment" );
+
+print("\nBundle Deployment Status=" + deployment.getStatus());
+
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
new file mode 100644
index 0000000..84b2d3a
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
@@ -0,0 +1,83 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * This sample script shows how to upgrade a Bundle to a new version. It upgrades the bundle version
+ * deployed by the cli-2-deployBundle.js script. The Bundle uses the Ant Bundle Type provided with
+ * RHQ.
+ * <pre>
+ *
+ * The deployment is to /tmp/sample-bundle.
+ *
+ * Prerequisites:
+ * 1) run cli-1-createBundle.js and cli-2-deployBundle.js
+ * 2) For successful deployment the RHQ Agents must be running on the "platforms" group platforms.
+ *
+ * Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/cli-3-upgradeBundle.js <path>
+ * 4) validate the upgrade deployment and that the config settings are applied correctly
+ * </pre>
+ */
+
+var bundleName = 'sample-bundle';
+var bundleDistroV2Path = args[0] + '/resources/sample-bundle-v2.zip';
+
+//get the bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName(bundleName);
+bc.fetchDestinations( true );
+var bundles = BundleManager.findBundlesByCriteria(bc);
+Assert.assertTrue( null != bundles && bundles.size() > 0 );
+var bundle = bundles.get(0);
+Assert.assertTrue( null != bundle.getDestinations() && bundle.getDestinations().size() == 1 );
+var dest = bundle.getDestinations().get(0);
+
+//create bundleVersion 2.0 for the sample bundle
+var distributionFile = new java.io.File(bundleDistroV2Path);
+distributionFile = new java.io.File(distributionFile.getAbsolutePath());
+Assert.assertTrue(distributionFile.exists(), "Missing ant bundle distribution file: " + distributionFile);
+var bundleVersion2 = BundleManager.createBundleVersionViaFile(distributionFile);
+
+print("\nCreated " + bundleVersion1 + "!")
+
+//create a config for the V2.0 deployment, setting the required properties for recipe in distro 2.0
+var config2 = new Configuration();
+var property21 = new PropertySimple("sample.name", "V2 Name");
+config2.put( property21 );
+var property22 = new PropertySimple("sample.port", "22222");
+config2.put( property22 );
+var property23 = new PropertySimple("sample.new", "V2.0 ONLY!");
+config2.put( property23 );
+
+// upgrade the deployment to 2.0 using the 2.0 config
+var deployment = BundleManager.createBundleDeployment(bundleVersion2.getId(), dest.getId(), "Upgrading Sample Ant Bundle to V2", config2);
+deployment = BundleManager.scheduleBundleDeployment(deployment.getId(), false);
+Assert.assertNotNull( deployment, "Failed to upgrade to 2.0 deployment" );
+
+print("\nBundle Upgrade Deployment Status=" + deployment.getStatus());
+
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
new file mode 100644
index 0000000..95626ec
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
@@ -0,0 +1,61 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * This sample script shows how to revert the "live" deployment for a destination. The revert
+ * will return to the previous "replaced" deployment. So, this will undo the V2 deployment
+ * performed in cli-3-upgradeBundle.js and return to the V1 deployment performed in
+ * cli-2-deployBundle.js. The Bundle uses the Ant Bundle Type provided with RHQ.
+ * <pre>
+ * Prerequisites:
+ * 1) run cli-1-createBundle.js, cli-2-deployBundle.js and cli-3-upgradeBundle.js
+ * 2) For successful deployment the RHQ Agents must be running on the "platforms" group platforms.
+ *
+ * Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/cli-4-revertBundle.js
+ * 4) validate the revert deployment and that V1 is again the live deployment.
+ * </pre>
+ */
+
+var bundleName = 'sample-bundle';
+
+//get the bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName(bundleName);
+bc.fetchDestinations( true );
+var bundles = BundleManager.findBundlesByCriteria(bc);
+Assert.assertTrue( null != bundles && bundles.size() > 0 );
+var bundle = bundles.get(0);
+Assert.assertTrue( null != bundle.getDestinations() && bundle.getDestinations().size() == 1 );
+var dest = bundle.getDestinations().get(0);
+
+//revert the live V2 deployment to the replaced V1 deployment
+var deployment = BundleManager.scheduleRevertBundleDeployment(dest.getId(), "Reverting Sample Ant Bundle from V2 to V1", false);
+Assert.assertNotNull( deployment, "Failed to revert 2.0 deployment" );
+
+print("\nBundle Revert Status=" + deployment.getStatus());
commit 41b640f240a7a98404079988b2fa4ac793c36ca4
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Wed Jun 30 15:12:59 2010 -0400
Working version of sample bundle scripts.
diff --git a/etc/samples/provisioning/sample-cli/resources/sample-bundle-v2.zip b/etc/samples/provisioning/sample-cli/resources/sample-bundle-v2.zip
new file mode 100644
index 0000000..f8b3392
Binary files /dev/null and b/etc/samples/provisioning/sample-cli/resources/sample-bundle-v2.zip differ
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
index 563858e..71a3324 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
@@ -30,13 +30,16 @@
* none
*
* Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
* 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
* 2) login user password serverHost serverPort
- * 3) exec <path>/cli-1-createBundle.js
+ * 3) exec <path>/scripts/cli-1-createBundle.js <path>
*/
var bundleName = 'sample-bundle';
-var bundleDistroV1Path = '../resources/sample-bundle-v1.zip';
+var bundleDistroV1Path = args[0] + '/resources/sample-bundle-v1.zip';
// delete the test bundle if it exists
var bc = new BundleCriteria();
@@ -53,4 +56,4 @@ distributionFile = new java.io.File(distributionFile.getAbsolutePath());
Assert.assertTrue(distributionFile.exists(), "Missing ant bundle distribution file: " + distributionFile);
var bundleVersion1 = BundleManager.createBundleVersionViaFile(distributionFile);
-print("\nCreated Bundle [" + bundleVersion1 + "]!")
+print("\nCreated " + bundleVersion1 + "!")
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
index 0b3bd75..b099286 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
@@ -23,17 +23,27 @@
/**
* This sample script shows how to deploy a Bundle. It deploys the bundle created
- * by the cli-1-deployBundle.js script. The Bundle uses the Ant Bundle Type provided with
+ * by the cli-1-createBundle.js script. The Bundle uses the Ant Bundle Type provided with
* RHQ.
* <pre>
- * Prerequisites:
- * At least one platform must be in inventory. If the "platforms" group does not exist it will
- * be created with all platforms as members.
+ *
+ * The deployment is to /tmp/sample-bundle.
+ *
+ * Prerequisites:
+ * 1) run cli-1-createBundle.js
+ * 2) At least one platform must be in inventory. If the "platforms" group does not exist it will
+ * be created with all imported platforms as members. The sample bundle will be deployed to the
+ * "platforms" group.
+ * 3) For successful deployment the RHQ Agents must be running on the "platforms" group platforms.
*
* Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
* 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
* 2) login user password serverHost serverPort
- * 3) exec <path>/cli-1-createBundle.js
+ * 3) exec <path>/scripts/cli-2-deployBundle.js
+ * 4) validate the deployment and that the config settings are applied correctly
* </pre>
*/
@@ -79,13 +89,13 @@ var dest = BundleManager.createBundleDestination(bundle.getId(), "sample destina
var config1 = new Configuration();
var property11 = new PropertySimple("sample.name", "V1 Name");
config1.put( property11 );
-var property12 = new PropertySimple("sample.port", "12345");
+var property12 = new PropertySimple("sample.port", "11111");
config1.put( property12 );
// create a deployment for sample bundle 1.0 using the 1.0 config
var deployment = BundleManager.createBundleDeployment(bundleVersion.getId(), dest.getId(), "Deploying Sample Ant Bundle V1", config1);
-deployment = BundleManager.scheduleBundleDeployment(testDeployment.getId(), true);
+deployment = BundleManager.scheduleBundleDeployment(deployment.getId(), true);
Assert.assertNotNull( deployment, "Failed to create 1.0 deployment" );
print("\nBundle Deployment Status=" + deployment.getStatus());
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
index e4e61ec..84b2d3a 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
@@ -22,45 +22,62 @@
*/
/**
- * Thus test script works with a real env including at least one platform resource and a running agent on
- * said platform. It will deploy an original distro file then upgrade it, utilitizing the
- * Ant bundle system.
+ * This sample script shows how to upgrade a Bundle to a new version. It upgrades the bundle version
+ * deployed by the cli-2-deployBundle.js script. The Bundle uses the Ant Bundle Type provided with
+ * RHQ.
+ * <pre>
+ *
+ * The deployment is to /tmp/sample-bundle.
+ *
+ * Prerequisites:
+ * 1) run cli-1-createBundle.js and cli-2-deployBundle.js
+ * 2) For successful deployment the RHQ Agents must be running on the "platforms" group platforms.
+ *
+ * Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/cli-3-upgradeBundle.js <path>
+ * 4) validate the upgrade deployment and that the config settings are applied correctly
+ * </pre>
*/
-var TestsEnabled = true;
+var bundleName = 'sample-bundle';
+var bundleDistroV2Path = args[0] + '/resources/sample-bundle-v2.zip';
-var bundleName = 'test-bundle-upgrade-ant';
-var bundleZipFile1 = 'src/test/resources/test-upgrade-bundle-ant1.zip';
-var bundleZipFile2 = 'src/test/resources/test-upgrade-bundle-ant2.zip';
+//get the bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName(bundleName);
+bc.fetchDestinations( true );
+var bundles = BundleManager.findBundlesByCriteria(bc);
+Assert.assertTrue( null != bundles && bundles.size() > 0 );
+var bundle = bundles.get(0);
+Assert.assertTrue( null != bundle.getDestinations() && bundle.getDestinations().size() == 1 );
+var dest = bundle.getDestinations().get(0);
-// note, super-user, will not test any security constraints
-var subject = rhq.login('rhqadmin', 'rhqadmin');
+//create bundleVersion 2.0 for the sample bundle
+var distributionFile = new java.io.File(bundleDistroV2Path);
+distributionFile = new java.io.File(distributionFile.getAbsolutePath());
+Assert.assertTrue(distributionFile.exists(), "Missing ant bundle distribution file: " + distributionFile);
+var bundleVersion2 = BundleManager.createBundleVersionViaFile(distributionFile);
-executeAllTests();
+print("\nCreated " + bundleVersion1 + "!")
-rhq.logout();
+//create a config for the V2.0 deployment, setting the required properties for recipe in distro 2.0
+var config2 = new Configuration();
+var property21 = new PropertySimple("sample.name", "V2 Name");
+config2.put( property21 );
+var property22 = new PropertySimple("sample.port", "22222");
+config2.put( property22 );
+var property23 = new PropertySimple("sample.new", "V2.0 ONLY!");
+config2.put( property23 );
-function testGroupDeployment() {
- if ( !TestsEnabled ) {
- return;
- }
+// upgrade the deployment to 2.0 using the 2.0 config
+var deployment = BundleManager.createBundleDeployment(bundleVersion2.getId(), dest.getId(), "Upgrading Sample Ant Bundle to V2", config2);
+deployment = BundleManager.scheduleBundleDeployment(deployment.getId(), false);
+Assert.assertNotNull( deployment, "Failed to upgrade to 2.0 deployment" );
- var groupId = getGroupId();
- var bundleType = getBundleType();
- Assert.assertNotNull(bundleType, "need ant bundle plugin installed for this test");
-
- // delete the test bundle if it exists
- var bc = new BundleCriteria();
- bc.addFilterName( bundleName );
- var bundles = BundleManager.findBundlesByCriteria( bc );
- if ( null != bundles && bundles.size() > 0 ) {
- print( "\nDeleting existing test ant bundle in order to test a fresh deploy...")
- BundleManager.deleteBundle( bundles.get(0).getId() );
- }
-
- // create bundleVersion 1.0
- var distributionFile1 = new java.io.File(bundleZipFile1);
- distributionFile1 = new java.io.File(distributionFile1.getAbsolutePath());
- Assert.assertTrue(distributionFile1.exists(), "missing ant bundle file 1: " + distributionFile1);
- var testBundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile1 );
+print("\nBundle Upgrade Deployment Status=" + deployment.getStatus());
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
index e4e61ec..95626ec 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
@@ -22,45 +22,40 @@
*/
/**
- * Thus test script works with a real env including at least one platform resource and a running agent on
- * said platform. It will deploy an original distro file then upgrade it, utilitizing the
- * Ant bundle system.
+ * This sample script shows how to revert the "live" deployment for a destination. The revert
+ * will return to the previous "replaced" deployment. So, this will undo the V2 deployment
+ * performed in cli-3-upgradeBundle.js and return to the V1 deployment performed in
+ * cli-2-deployBundle.js. The Bundle uses the Ant Bundle Type provided with RHQ.
+ * <pre>
+ * Prerequisites:
+ * 1) run cli-1-createBundle.js, cli-2-deployBundle.js and cli-3-upgradeBundle.js
+ * 2) For successful deployment the RHQ Agents must be running on the "platforms" group platforms.
+ *
+ * Usage:
+ * Note, the CLI must be executed in its own bin directory, so have <path> below be the path to the
+ * sample-cli directory.
+ *
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/cli-4-revertBundle.js
+ * 4) validate the revert deployment and that V1 is again the live deployment.
+ * </pre>
*/
-var TestsEnabled = true;
+var bundleName = 'sample-bundle';
-var bundleName = 'test-bundle-upgrade-ant';
-var bundleZipFile1 = 'src/test/resources/test-upgrade-bundle-ant1.zip';
-var bundleZipFile2 = 'src/test/resources/test-upgrade-bundle-ant2.zip';
+//get the bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName(bundleName);
+bc.fetchDestinations( true );
+var bundles = BundleManager.findBundlesByCriteria(bc);
+Assert.assertTrue( null != bundles && bundles.size() > 0 );
+var bundle = bundles.get(0);
+Assert.assertTrue( null != bundle.getDestinations() && bundle.getDestinations().size() == 1 );
+var dest = bundle.getDestinations().get(0);
-// note, super-user, will not test any security constraints
-var subject = rhq.login('rhqadmin', 'rhqadmin');
-
-executeAllTests();
-
-rhq.logout();
-
-function testGroupDeployment() {
- if ( !TestsEnabled ) {
- return;
- }
-
- var groupId = getGroupId();
- var bundleType = getBundleType();
- Assert.assertNotNull(bundleType, "need ant bundle plugin installed for this test");
-
- // delete the test bundle if it exists
- var bc = new BundleCriteria();
- bc.addFilterName( bundleName );
- var bundles = BundleManager.findBundlesByCriteria( bc );
- if ( null != bundles && bundles.size() > 0 ) {
- print( "\nDeleting existing test ant bundle in order to test a fresh deploy...")
- BundleManager.deleteBundle( bundles.get(0).getId() );
- }
-
- // create bundleVersion 1.0
- var distributionFile1 = new java.io.File(bundleZipFile1);
- distributionFile1 = new java.io.File(distributionFile1.getAbsolutePath());
- Assert.assertTrue(distributionFile1.exists(), "missing ant bundle file 1: " + distributionFile1);
- var testBundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile1 );
+//revert the live V2 deployment to the replaced V1 deployment
+var deployment = BundleManager.scheduleRevertBundleDeployment(dest.getId(), "Reverting Sample Ant Bundle from V2 to V1", false);
+Assert.assertNotNull( deployment, "Failed to revert 2.0 deployment" );
+print("\nBundle Revert Status=" + deployment.getStatus());
commit be0dd59b289eec8af1688708e224945a46aeda6f
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Wed Jun 30 10:26:30 2010 -0400
LT commit
diff --git a/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ManagedComponentComponent.java b/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ManagedComponentComponent.java
index aefb351..e4511fd 100644
--- a/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ManagedComponentComponent.java
+++ b/modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ManagedComponentComponent.java
@@ -1,422 +1,422 @@
-/*
-* Jopr Management Platform
-* Copyright (C) 2005-2009 Red Hat, Inc.
-* All rights reserved.
-*
-* This program is free software; you can redistribute it and/or modify
-* it under the terms of the GNU General Public License, version 2, as
-* published by the Free Software Foundation, and/or the GNU Lesser
-* General Public License, version 2.1, also as published by the Free
-* Software Foundation.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License and the GNU Lesser General Public License
-* for more details.
-*
-* You should have received a copy of the GNU General Public License
-* and the GNU Lesser General Public License along with this program;
-* if not, write to the Free Software Foundation, Inc.,
-* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-*/
-package org.rhq.plugins.jbossas5;
-
-import java.lang.reflect.Array;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.jboss.deployers.spi.management.ManagementView;
-import org.jboss.deployers.spi.management.deploy.DeploymentManager;
-import org.jboss.deployers.spi.management.deploy.DeploymentProgress;
-import org.jboss.deployers.spi.management.deploy.DeploymentStatus;
-import org.jboss.managed.api.ComponentType;
-import org.jboss.managed.api.ManagedComponent;
-import org.jboss.managed.api.ManagedDeployment;
-import org.jboss.managed.api.ManagedOperation;
-import org.jboss.managed.api.ManagedProperty;
-import org.jboss.managed.api.RunState;
-import org.jboss.metatype.api.values.ArrayValue;
-import org.jboss.metatype.api.values.CollectionValue;
-import org.jboss.metatype.api.values.CompositeValue;
-import org.jboss.metatype.api.values.EnumValue;
-import org.jboss.metatype.api.values.MetaValue;
-import org.jboss.metatype.api.values.SimpleValue;
-import org.jboss.remoting.CannotConnectException;
-
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import org.rhq.core.domain.configuration.Configuration;
-import org.rhq.core.domain.configuration.PropertySimple;
-import org.rhq.core.domain.configuration.ConfigurationUpdateStatus;
-import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
-import org.rhq.core.domain.measurement.AvailabilityType;
-import org.rhq.core.domain.measurement.DataType;
-import org.rhq.core.domain.measurement.MeasurementDataNumeric;
-import org.rhq.core.domain.measurement.MeasurementDataTrait;
-import org.rhq.core.domain.measurement.MeasurementReport;
-import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
-import org.rhq.core.domain.operation.OperationDefinition;
-import org.rhq.core.domain.resource.ResourceType;
-import org.rhq.core.pluginapi.configuration.ConfigurationFacet;
-import org.rhq.core.pluginapi.configuration.ConfigurationUpdateReport;
-import org.rhq.core.pluginapi.inventory.DeleteResourceFacet;
-import org.rhq.core.pluginapi.inventory.ResourceContext;
-import org.rhq.core.pluginapi.measurement.MeasurementFacet;
-import org.rhq.core.pluginapi.operation.OperationFacet;
-import org.rhq.core.pluginapi.operation.OperationResult;
-import org.rhq.core.util.exception.ThrowableUtil;
-import org.rhq.plugins.jbossas5.util.ConversionUtils;
-import org.rhq.plugins.jbossas5.util.DeploymentUtils;
-import org.rhq.plugins.jbossas5.util.ManagedComponentUtils;
-import org.rhq.plugins.jbossas5.util.ResourceTypeUtils;
-import org.rhq.plugins.jbossas5.util.ResourceComponentUtils;
-import org.rhq.plugins.jbossas5.util.DebugUtils;
-
-/**
- * Service ResourceComponent for all {@link ManagedComponent}s in a Profile.
- *
- * @author Ian Springer
- * @author Jason Dobies
- * @author Mark Spritzler
- */
-public class ManagedComponentComponent extends AbstractManagedComponent implements ConfigurationFacet,
- DeleteResourceFacet, OperationFacet, MeasurementFacet {
- public static interface Config {
- String COMPONENT_TYPE = "componentType";
- String COMPONENT_SUBTYPE = "componentSubtype";
- String COMPONENT_NAME = "componentName";
- String TEMPLATE_NAME = "templateName";
- String COMPONENT_NAME_PROPERTY = "componentNameProperty";
- }
-
- protected static final char PREFIX_DELIMITER = '|';
-
- private final Log log = LogFactory.getLog(this.getClass());
-
- private String componentName;
- private ComponentType componentType;
-
- // ResourceComponent Implementation --------------------------------------------
-
- public AvailabilityType getAvailability() {
- RunState runState;
- try {
- runState = getManagedComponent().getRunState();
- } catch (CannotConnectException e) {
- return AvailabilityType.DOWN;
- }
- return (runState == RunState.RUNNING) ? AvailabilityType.UP : AvailabilityType.DOWN;
- }
-
- public void start(ResourceContext<ProfileServiceComponent> resourceContext) throws Exception {
- super.start(resourceContext);
- this.componentType = ConversionUtils.getComponentType(getResourceContext().getResourceType());
- Configuration pluginConfig = resourceContext.getPluginConfiguration();
- this.componentName = pluginConfig.getSimple(Config.COMPONENT_NAME).getStringValue();
- log.trace("Started ResourceComponent for " + getResourceDescription() + ", managing " + this.componentType
- + " component '" + this.componentName + "'.");
- }
-
- public void stop() {
- return;
- }
-
- // ConfigurationComponent Implementation --------------------------------------------
-
- public Configuration loadResourceConfiguration()
- {
- Configuration resourceConfig;
- try
- {
- Map<String, ManagedProperty> managedProperties = getManagedComponent().getProperties();
- Map<String, PropertySimple> customProps =
- ResourceComponentUtils.getCustomProperties(getResourceContext().getPluginConfiguration());
- if (this.log.isDebugEnabled()) this.log.debug("*** AFTER LOAD:\n"
- + DebugUtils.convertPropertiesToString(managedProperties));
- resourceConfig = ConversionUtils.convertManagedObjectToConfiguration(managedProperties,
- customProps, getResourceContext().getResourceType());
- }
- catch (Exception e)
- {
- RunState runState = getManagedComponent().getRunState();
- if (runState == RunState.RUNNING) {
- this.log.error("Failed to load configuration for " + getResourceDescription() + ".", e);
- } else {
- this.log.debug("Failed to load configuration for " + getResourceDescription()
- + ", but managed component is not in the RUNNING state.", e);
- }
- throw new RuntimeException(ThrowableUtil.getAllMessages(e));
- }
- return resourceConfig;
- }
-
- public void updateResourceConfiguration(ConfigurationUpdateReport configurationUpdateReport)
- {
- Configuration resourceConfig = configurationUpdateReport.getConfiguration();
- Configuration pluginConfig = getResourceContext().getPluginConfiguration();
- try
- {
- ManagedComponent managedComponent = getManagedComponent();
- Map<String, ManagedProperty> managedProperties = managedComponent.getProperties();
- Map<String, PropertySimple> customProps = ResourceComponentUtils.getCustomProperties(pluginConfig);
- if (this.log.isDebugEnabled()) this.log.debug("*** BEFORE UPDATE:\n"
- + DebugUtils.convertPropertiesToString(managedProperties));
- ConversionUtils.convertConfigurationToManagedProperties(managedProperties, resourceConfig,
- getResourceContext().getResourceType(), customProps);
- if (this.log.isDebugEnabled()) this.log.debug("*** AFTER UPDATE:\n"
- + DebugUtils.convertPropertiesToString(managedProperties));
- updateComponent(managedComponent);
- configurationUpdateReport.setStatus(ConfigurationUpdateStatus.SUCCESS);
- }
- catch (Exception e)
- {
- this.log.error("Failed to update configuration for " + getResourceDescription() + ".", e);
- configurationUpdateReport.setStatus(ConfigurationUpdateStatus.FAILURE);
- configurationUpdateReport.setErrorMessage(ThrowableUtil.getAllMessages(e));
- }
- }
-
- // DeleteResourceFacet Implementation --------------------------------------------
-
- public void deleteResource() throws Exception {
- DeploymentManager deploymentManager = getConnection().getDeploymentManager();
- if (!deploymentManager.isRedeploySupported())
- throw new UnsupportedOperationException("Deletion of " + getResourceContext().getResourceType().getName()
- + " Resources is not currently supported.");
- ManagedComponent managedComponent = getManagedComponent();
- log.debug("Removing " + getResourceDescription() + " with component " + toString(managedComponent) + "...");
- ManagementView managementView = getConnection().getManagementView();
- managementView.removeComponent(managedComponent);
- ManagedDeployment parentDeployment = managedComponent.getDeployment();
- log.debug("Redeploying parent deployment '" + parentDeployment.getName()
- + "' in order to complete removal of component " + toString(managedComponent) + "...");
- DeploymentProgress progress = deploymentManager.redeploy(parentDeployment.getName());
- DeploymentStatus redeployStatus = DeploymentUtils.run(progress);
- if (redeployStatus.isFailed()) {
- log.error("Failed to redeploy parent deployment '" + parentDeployment.getName()
- + "during removal of component " + toString(managedComponent)
- + " - removal may not persist when the app server is restarted.", redeployStatus.getFailure());
- }
- managementView.load();
- }
-
- // OperationFacet Implementation --------------------------------------------
-
- public OperationResult invokeOperation(String name, Configuration parameters) throws Exception {
- OperationDefinition operationDefinition = getOperationDefinition(name);
- ManagedOperation managedOperation = getManagedOperation(operationDefinition);
- // Convert parameters into MetaValue array.
- MetaValue[] parameterMetaValues = ConversionUtils.convertOperationsParametersToMetaValues(managedOperation,
- parameters, operationDefinition);
- // invoke() takes a varargs, so we need to pass an empty array, rather than null.
- MetaValue resultMetaValue = managedOperation.invoke(parameterMetaValues);
- OperationResult result = new OperationResult();
- // Convert result MetaValue to corresponding Property type.
- ConversionUtils.convertManagedOperationResults(managedOperation, resultMetaValue, result.getComplexResults(),
- operationDefinition);
- return result;
- }
-
- // MeasurementFacet Implementation --------------------------------------------
-
- public void getValues(MeasurementReport report, Set<MeasurementScheduleRequest> metrics) throws Exception {
- ManagedComponent managedComponent = getManagedComponent();
- RunState runState = managedComponent.getRunState();
- for (MeasurementScheduleRequest request : metrics) {
- try {
- if (request.getName().equals("runState")) {
- report.addData(new MeasurementDataTrait(request, runState.name()));
- } else {
- Object value = getSimpleValue(managedComponent, request);
- addValueToMeasurementReport(report, request, value);
- }
- } catch (Exception e) {
- if (runState == RunState.RUNNING) {
- log.error("Failed to collect metric for " + request, e);
- } else {
- log.debug("Failed to collect metric for " + request
- + ", but managed component is not in the RUNNING state.", e);
- }
- }
- }
- }
-
- protected void updateComponent(ManagedComponent managedComponent) throws Exception {
- log.trace("Updating " + getResourceDescription() + " with component " + toString(managedComponent) + "...");
- ManagementView managementView = getConnection().getManagementView();
- managementView.updateComponent(managedComponent);
- managementView.load();
- }
-
- // ------------------------------------------------------------------------------
-
- /**
- * The name of the measurement schedule request (i.e. the metric name) can be in one of two forms:
- * <p/>
- * [prefix'|']simplePropertyName (e.g. "maxTime" or "ThreadPool|currentThreadCount")
- * [prefix'|']compositePropertyName'.'key (e.g. "consumerCount" or "messageStatistics.count")
- *
- * @param managedComponent a managed component
- * @param request a measurement schedule request
- * @return the metric value
- */
- @Nullable
- protected Object getSimpleValue(ManagedComponent managedComponent, MeasurementScheduleRequest request) {
- String metricName = request.getName();
- int pipeIndex = metricName.indexOf(PREFIX_DELIMITER);
- // Remove the prefix if there is one (e.g. "ThreadPool|currentThreadCount" -> "currentThreadCount").
- String compositePropName = (pipeIndex == -1) ? metricName : metricName.substring(pipeIndex + 1);
- int dotIndex = compositePropName.indexOf('.');
- String metricPropName = (dotIndex == -1) ? compositePropName : compositePropName.substring(0, dotIndex);
- ManagedProperty metricProp = managedComponent.getProperty(metricPropName);
- if (metricProp == null) {
- return null;
- }
- MetaValue metaValue;
- if (dotIndex == -1) {
- metaValue = metricProp.getValue();
- } else {
- CompositeValue compositeValue = (CompositeValue) metricProp.getValue();
- String key = compositePropName.substring(dotIndex + 1);
- metaValue = compositeValue.get(key);
- }
- return getInnerValue(metaValue);
- }
-
- // TODO: Move this to a utility class.
- @Nullable
- private static Object getInnerValue(MetaValue metaValue) {
- if (metaValue == null) {
- return null;
- }
- Object value;
- if (metaValue.getMetaType().isSimple()) {
- SimpleValue simpleValue = (SimpleValue) metaValue;
- value = simpleValue.getValue();
- } else if (metaValue.getMetaType().isEnum()) {
- EnumValue enumValue = (EnumValue) metaValue;
- value = enumValue.getValue();
- } else if (metaValue.getMetaType().isArray()) {
- ArrayValue arrayValue = (ArrayValue) metaValue;
- value = arrayValue.getValue();
- } else if (metaValue.getMetaType().isCollection()) {
- CollectionValue collectionValue = (CollectionValue) metaValue;
- List list = new ArrayList();
- for (MetaValue element : collectionValue.getElements()) {
- list.add(getInnerValue(element));
- }
- value = list;
- } else {
- value = metaValue.toString();
- }
- return value;
- }
-
- protected void addValueToMeasurementReport(MeasurementReport report, MeasurementScheduleRequest request,
- Object value) {
- if (value == null) {
- return;
- }
- String stringValue = toString(value);
-
- DataType dataType = request.getDataType();
- switch (dataType) {
- case MEASUREMENT:
- try {
- MeasurementDataNumeric dataNumeric = new MeasurementDataNumeric(request, Double.valueOf(stringValue));
- report.addData(dataNumeric);
- } catch (NumberFormatException e) {
- log.error("Profile service did not return a numeric value as expected for metric [" + request.getName()
- + "] - value returned was " + value + ".", e);
- }
- break;
- case TRAIT:
- MeasurementDataTrait dataTrait = new MeasurementDataTrait(request, stringValue);
- report.addData(dataTrait);
- break;
- default:
- throw new IllegalStateException("Unsupported measurement data type: " + dataType);
- }
- }
-
- protected ComponentType getComponentType() {
- return componentType;
- }
-
- protected String getComponentName() {
- return componentName;
- }
-
- protected ManagedComponent getManagedComponent() {
- ManagedComponent managedComponent;
- try {
- ManagementView managementView = getConnection().getManagementView();
- managedComponent = ManagedComponentUtils.getManagedComponent(managementView, this.componentType,
- this.componentName);
- } catch (Exception e) {
- throw new RuntimeException("Failed to load [" + this.componentType + "] ManagedComponent ["
- + this.componentName + "].", e);
- }
- if (managedComponent == null)
- throw new IllegalStateException("Failed to find [" + this.componentType + "] ManagedComponent named ["
- + this.componentName + "].");
- log.trace("Retrieved " + toString(managedComponent) + ".");
- return managedComponent;
- }
-
- @NotNull
- private OperationDefinition getOperationDefinition(String operationName) {
- ResourceType resourceType = getResourceContext().getResourceType();
- OperationDefinition operationDefinition = ResourceTypeUtils.getOperationDefinition(resourceType, operationName);
- if (operationDefinition == null)
- throw new IllegalStateException("Operation named '" + operationName
- + "' is not defined for Resource type '" + resourceType.getName() + "' in the '"
- + resourceType.getPlugin() + "' plugin's descriptor.");
- return operationDefinition;
- }
-
- @NotNull
- private ManagedOperation getManagedOperation(OperationDefinition operationDefinition) {
- ManagedComponent managedComponent = getManagedComponent();
- Set<ManagedOperation> operations = managedComponent.getOperations();
- for (ManagedOperation operation : operations) {
- ConfigurationDefinition paramsConfigDef = operationDefinition.getParametersConfigurationDefinition();
- int paramCount = (paramsConfigDef != null) ? paramsConfigDef.getPropertyDefinitions().size() : 0;
- if (operation.getName().equals(operationDefinition.getName())
- && (operation.getParameters().length == paramCount))
- return operation;
- }
- throw new IllegalStateException("ManagedOperation named '" + operationDefinition.getName()
- + "' not found on ManagedComponent [" + getManagedComponent() + "].");
- }
-
- private static String toString(ManagedComponent managedComponent) {
- Map<String, ManagedProperty> properties = managedComponent.getProperties();
- return managedComponent.getClass().getSimpleName() + "@" + System.identityHashCode(managedComponent) + "["
- + "type=" + managedComponent.getType() + ", name=" + managedComponent.getName() + ", properties="
- + properties.getClass().getSimpleName() + "@" + System.identityHashCode(properties) + "]";
- }
-
- private static String toString(@NotNull Object value) {
- if (value.getClass().isArray()) {
- StringBuilder buffer = new StringBuilder();
- int lastIndex = Array.getLength(value) - 1;
- for (int i = 0; i < Array.getLength(value); i++) {
- buffer.append(String.valueOf(Array.get(value, i)));
- if (i == lastIndex) {
- break;
- }
- buffer.append(", ");
- }
- return buffer.toString();
- } else {
- return value.toString();
- }
- }
-}
+/*
+* Jopr Management Platform
+* Copyright (C) 2005-2009 Red Hat, Inc.
+* All rights reserved.
+*
+* This program is free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License, version 2, as
+* published by the Free Software Foundation, and/or the GNU Lesser
+* General Public License, version 2.1, also as published by the Free
+* Software Foundation.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License and the GNU Lesser General Public License
+* for more details.
+*
+* You should have received a copy of the GNU General Public License
+* and the GNU Lesser General Public License along with this program;
+* if not, write to the Free Software Foundation, Inc.,
+* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+*/
+package org.rhq.plugins.jbossas5;
+
+import java.lang.reflect.Array;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.jboss.deployers.spi.management.ManagementView;
+import org.jboss.deployers.spi.management.deploy.DeploymentManager;
+import org.jboss.deployers.spi.management.deploy.DeploymentProgress;
+import org.jboss.deployers.spi.management.deploy.DeploymentStatus;
+import org.jboss.managed.api.ComponentType;
+import org.jboss.managed.api.ManagedComponent;
+import org.jboss.managed.api.ManagedDeployment;
+import org.jboss.managed.api.ManagedOperation;
+import org.jboss.managed.api.ManagedProperty;
+import org.jboss.managed.api.RunState;
+import org.jboss.metatype.api.values.ArrayValue;
+import org.jboss.metatype.api.values.CollectionValue;
+import org.jboss.metatype.api.values.CompositeValue;
+import org.jboss.metatype.api.values.EnumValue;
+import org.jboss.metatype.api.values.MetaValue;
+import org.jboss.metatype.api.values.SimpleValue;
+import org.jboss.remoting.CannotConnectException;
+
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+import org.rhq.core.domain.configuration.Configuration;
+import org.rhq.core.domain.configuration.PropertySimple;
+import org.rhq.core.domain.configuration.ConfigurationUpdateStatus;
+import org.rhq.core.domain.configuration.definition.ConfigurationDefinition;
+import org.rhq.core.domain.measurement.AvailabilityType;
+import org.rhq.core.domain.measurement.DataType;
+import org.rhq.core.domain.measurement.MeasurementDataNumeric;
+import org.rhq.core.domain.measurement.MeasurementDataTrait;
+import org.rhq.core.domain.measurement.MeasurementReport;
+import org.rhq.core.domain.measurement.MeasurementScheduleRequest;
+import org.rhq.core.domain.operation.OperationDefinition;
+import org.rhq.core.domain.resource.ResourceType;
+import org.rhq.core.pluginapi.configuration.ConfigurationFacet;
+import org.rhq.core.pluginapi.configuration.ConfigurationUpdateReport;
+import org.rhq.core.pluginapi.inventory.DeleteResourceFacet;
+import org.rhq.core.pluginapi.inventory.ResourceContext;
+import org.rhq.core.pluginapi.measurement.MeasurementFacet;
+import org.rhq.core.pluginapi.operation.OperationFacet;
+import org.rhq.core.pluginapi.operation.OperationResult;
+import org.rhq.core.util.exception.ThrowableUtil;
+import org.rhq.plugins.jbossas5.util.ConversionUtils;
+import org.rhq.plugins.jbossas5.util.DeploymentUtils;
+import org.rhq.plugins.jbossas5.util.ManagedComponentUtils;
+import org.rhq.plugins.jbossas5.util.ResourceTypeUtils;
+import org.rhq.plugins.jbossas5.util.ResourceComponentUtils;
+import org.rhq.plugins.jbossas5.util.DebugUtils;
+
+/**
+ * Service ResourceComponent for all {@link ManagedComponent}s in a Profile.
+ *
+ * @author Ian Springer
+ * @author Jason Dobies
+ * @author Mark Spritzler
+ */
+public class ManagedComponentComponent extends AbstractManagedComponent implements ConfigurationFacet,
+ DeleteResourceFacet, OperationFacet, MeasurementFacet {
+ public static interface Config {
+ String COMPONENT_TYPE = "componentType";
+ String COMPONENT_SUBTYPE = "componentSubtype";
+ String COMPONENT_NAME = "componentName";
+ String TEMPLATE_NAME = "templateName";
+ String COMPONENT_NAME_PROPERTY = "componentNameProperty";
+ }
+
+ protected static final char PREFIX_DELIMITER = '|';
+
+ private final Log log = LogFactory.getLog(this.getClass());
+
+ private String componentName;
+ private ComponentType componentType;
+
+ // ResourceComponent Implementation --------------------------------------------
+
+ public AvailabilityType getAvailability() {
+ RunState runState;
+ try {
+ runState = getManagedComponent().getRunState();
+ } catch (CannotConnectException e) {
+ return AvailabilityType.DOWN;
+ }
+ return (runState == RunState.RUNNING) ? AvailabilityType.UP : AvailabilityType.DOWN;
+ }
+
+ public void start(ResourceContext<ProfileServiceComponent> resourceContext) throws Exception {
+ super.start(resourceContext);
+ this.componentType = ConversionUtils.getComponentType(getResourceContext().getResourceType());
+ Configuration pluginConfig = resourceContext.getPluginConfiguration();
+ this.componentName = pluginConfig.getSimple(Config.COMPONENT_NAME).getStringValue();
+ log.trace("Started ResourceComponent for " + getResourceDescription() + ", managing " + this.componentType
+ + " component '" + this.componentName + "'.");
+ }
+
+ public void stop() {
+ return;
+ }
+
+ // ConfigurationComponent Implementation --------------------------------------------
+
+ public Configuration loadResourceConfiguration()
+ {
+ Configuration resourceConfig;
+ try
+ {
+ Map<String, ManagedProperty> managedProperties = getManagedComponent().getProperties();
+ Map<String, PropertySimple> customProps =
+ ResourceComponentUtils.getCustomProperties(getResourceContext().getPluginConfiguration());
+ if (this.log.isDebugEnabled()) this.log.debug("*** AFTER LOAD:\n"
+ + DebugUtils.convertPropertiesToString(managedProperties));
+ resourceConfig = ConversionUtils.convertManagedObjectToConfiguration(managedProperties,
+ customProps, getResourceContext().getResourceType());
+ }
+ catch (Exception e)
+ {
+ RunState runState = getManagedComponent().getRunState();
+ if (runState == RunState.RUNNING) {
+ this.log.error("Failed to load configuration for " + getResourceDescription() + ".", e);
+ } else {
+ this.log.debug("Failed to load configuration for " + getResourceDescription()
+ + ", but managed component is not in the RUNNING state.", e);
+ }
+ throw new RuntimeException(ThrowableUtil.getAllMessages(e));
+ }
+ return resourceConfig;
+ }
+
+ public void updateResourceConfiguration(ConfigurationUpdateReport configurationUpdateReport)
+ {
+ Configuration resourceConfig = configurationUpdateReport.getConfiguration();
+ Configuration pluginConfig = getResourceContext().getPluginConfiguration();
+ try
+ {
+ ManagedComponent managedComponent = getManagedComponent();
+ Map<String, ManagedProperty> managedProperties = managedComponent.getProperties();
+ Map<String, PropertySimple> customProps = ResourceComponentUtils.getCustomProperties(pluginConfig);
+ if (this.log.isDebugEnabled()) this.log.debug("*** BEFORE UPDATE:\n"
+ + DebugUtils.convertPropertiesToString(managedProperties));
+ ConversionUtils.convertConfigurationToManagedProperties(managedProperties, resourceConfig,
+ getResourceContext().getResourceType(), customProps);
+ if (this.log.isDebugEnabled()) this.log.debug("*** AFTER UPDATE:\n"
+ + DebugUtils.convertPropertiesToString(managedProperties));
+ updateComponent(managedComponent);
+ configurationUpdateReport.setStatus(ConfigurationUpdateStatus.SUCCESS);
+ }
+ catch (Exception e)
+ {
+ this.log.error("Failed to update configuration for " + getResourceDescription() + ".", e);
+ configurationUpdateReport.setStatus(ConfigurationUpdateStatus.FAILURE);
+ configurationUpdateReport.setErrorMessage(ThrowableUtil.getAllMessages(e));
+ }
+ }
+
+ // DeleteResourceFacet Implementation --------------------------------------------
+
+ public void deleteResource() throws Exception {
+ DeploymentManager deploymentManager = getConnection().getDeploymentManager();
+ if (!deploymentManager.isRedeploySupported())
+ throw new UnsupportedOperationException("Deletion of " + getResourceContext().getResourceType().getName()
+ + " Resources is not currently supported.");
+ ManagedComponent managedComponent = getManagedComponent();
+ log.debug("Removing " + getResourceDescription() + " with component " + toString(managedComponent) + "...");
+ ManagementView managementView = getConnection().getManagementView();
+ managementView.removeComponent(managedComponent);
+ ManagedDeployment parentDeployment = managedComponent.getDeployment();
+ log.debug("Redeploying parent deployment '" + parentDeployment.getName()
+ + "' in order to complete removal of component " + toString(managedComponent) + "...");
+ DeploymentProgress progress = deploymentManager.redeploy(parentDeployment.getName());
+ DeploymentStatus redeployStatus = DeploymentUtils.run(progress);
+ if (redeployStatus.isFailed()) {
+ log.error("Failed to redeploy parent deployment '" + parentDeployment.getName()
+ + "during removal of component " + toString(managedComponent)
+ + " - removal may not persist when the app server is restarted.", redeployStatus.getFailure());
+ }
+ managementView.load();
+ }
+
+ // OperationFacet Implementation --------------------------------------------
+
+ public OperationResult invokeOperation(String name, Configuration parameters) throws Exception {
+ OperationDefinition operationDefinition = getOperationDefinition(name);
+ ManagedOperation managedOperation = getManagedOperation(operationDefinition);
+ // Convert parameters into MetaValue array.
+ MetaValue[] parameterMetaValues = ConversionUtils.convertOperationsParametersToMetaValues(managedOperation,
+ parameters, operationDefinition);
+ // invoke() takes a varargs, so we need to pass an empty array, rather than null.
+ MetaValue resultMetaValue = managedOperation.invoke(parameterMetaValues);
+ OperationResult result = new OperationResult();
+ // Convert result MetaValue to corresponding Property type.
+ ConversionUtils.convertManagedOperationResults(managedOperation, resultMetaValue, result.getComplexResults(),
+ operationDefinition);
+ return result;
+ }
+
+ // MeasurementFacet Implementation --------------------------------------------
+
+ public void getValues(MeasurementReport report, Set<MeasurementScheduleRequest> metrics) throws Exception {
+ ManagedComponent managedComponent = getManagedComponent();
+ RunState runState = managedComponent.getRunState();
+ for (MeasurementScheduleRequest request : metrics) {
+ try {
+ if (request.getName().equals("runState")) {
+ report.addData(new MeasurementDataTrait(request, runState.name()));
+ } else {
+ Object value = getSimpleValue(managedComponent, request);
+ addValueToMeasurementReport(report, request, value);
+ }
+ } catch (Exception e) {
+ if (runState == RunState.RUNNING) {
+ log.error("Failed to collect metric for " + request, e);
+ } else {
+ log.debug("Failed to collect metric for " + request
+ + ", but managed component is not in the RUNNING state.", e);
+ }
+ }
+ }
+ }
+
+ protected void updateComponent(ManagedComponent managedComponent) throws Exception {
+ log.trace("Updating " + getResourceDescription() + " with component " + toString(managedComponent) + "...");
+ ManagementView managementView = getConnection().getManagementView();
+ managementView.updateComponent(managedComponent);
+ managementView.load();
+ }
+
+ // ------------------------------------------------------------------------------
+
+ /**
+ * The name of the measurement schedule request (i.e. the metric name) can be in one of two forms:
+ * <p/>
+ * [prefix'|']simplePropertyName (e.g. "maxTime" or "ThreadPool|currentThreadCount")
+ * [prefix'|']compositePropertyName'.'key (e.g. "consumerCount" or "messageStatistics.count")
+ *
+ * @param managedComponent a managed component
+ * @param request a measurement schedule request
+ * @return the metric value
+ */
+ @Nullable
+ protected Object getSimpleValue(ManagedComponent managedComponent, MeasurementScheduleRequest request) {
+ String metricName = request.getName();
+ int pipeIndex = metricName.indexOf(PREFIX_DELIMITER);
+ // Remove the prefix if there is one (e.g. "ThreadPool|currentThreadCount" -> "currentThreadCount").
+ String compositePropName = (pipeIndex == -1) ? metricName : metricName.substring(pipeIndex + 1);
+ int dotIndex = compositePropName.indexOf('.');
+ String metricPropName = (dotIndex == -1) ? compositePropName : compositePropName.substring(0, dotIndex);
+ ManagedProperty metricProp = managedComponent.getProperty(metricPropName);
+ if (metricProp == null) {
+ return null;
+ }
+ MetaValue metaValue;
+ if (dotIndex == -1) {
+ metaValue = metricProp.getValue();
+ } else {
+ CompositeValue compositeValue = (CompositeValue) metricProp.getValue();
+ String key = compositePropName.substring(dotIndex + 1);
+ metaValue = compositeValue.get(key);
+ }
+ return getInnerValue(metaValue);
+ }
+
+ // TODO: Move this to a utility class.
+ @Nullable
+ private static Object getInnerValue(MetaValue metaValue) {
+ if (metaValue == null) {
+ return null;
+ }
+ Object value;
+ if (metaValue.getMetaType().isSimple()) {
+ SimpleValue simpleValue = (SimpleValue) metaValue;
+ value = simpleValue.getValue();
+ } else if (metaValue.getMetaType().isEnum()) {
+ EnumValue enumValue = (EnumValue) metaValue;
+ value = enumValue.getValue();
+ } else if (metaValue.getMetaType().isArray()) {
+ ArrayValue arrayValue = (ArrayValue) metaValue;
+ value = arrayValue.getValue();
+ } else if (metaValue.getMetaType().isCollection()) {
+ CollectionValue collectionValue = (CollectionValue) metaValue;
+ List list = new ArrayList();
+ for (MetaValue element : collectionValue.getElements()) {
+ list.add(getInnerValue(element));
+ }
+ value = list;
+ } else {
+ value = metaValue.toString();
+ }
+ return value;
+ }
+
+ protected void addValueToMeasurementReport(MeasurementReport report, MeasurementScheduleRequest request,
+ Object value) {
+ if (value == null) {
+ return;
+ }
+ String stringValue = toString(value);
+
+ DataType dataType = request.getDataType();
+ switch (dataType) {
+ case MEASUREMENT:
+ try {
+ MeasurementDataNumeric dataNumeric = new MeasurementDataNumeric(request, Double.valueOf(stringValue));
+ report.addData(dataNumeric);
+ } catch (NumberFormatException e) {
+ log.error("Profile service did not return a numeric value as expected for metric [" + request.getName()
+ + "] - value returned was " + value + ".", e);
+ }
+ break;
+ case TRAIT:
+ MeasurementDataTrait dataTrait = new MeasurementDataTrait(request, stringValue);
+ report.addData(dataTrait);
+ break;
+ default:
+ throw new IllegalStateException("Unsupported measurement data type: " + dataType);
+ }
+ }
+
+ protected ComponentType getComponentType() {
+ return componentType;
+ }
+
+ protected String getComponentName() {
+ return componentName;
+ }
+
+ protected ManagedComponent getManagedComponent() {
+ ManagedComponent managedComponent;
+ try {
+ ManagementView managementView = getConnection().getManagementView();
+ managedComponent = ManagedComponentUtils.getManagedComponent(managementView, this.componentType,
+ this.componentName);
+ } catch (Exception e) {
+ throw new RuntimeException("Failed to load [" + this.componentType + "] ManagedComponent ["
+ + this.componentName + "].", e);
+ }
+ if (managedComponent == null)
+ throw new IllegalStateException("Failed to find [" + this.componentType + "] ManagedComponent named ["
+ + this.componentName + "].");
+ log.trace("Retrieved " + toString(managedComponent) + ".");
+ return managedComponent;
+ }
+
+ @NotNull
+ private OperationDefinition getOperationDefinition(String operationName) {
+ ResourceType resourceType = getResourceContext().getResourceType();
+ OperationDefinition operationDefinition = ResourceTypeUtils.getOperationDefinition(resourceType, operationName);
+ if (operationDefinition == null)
+ throw new IllegalStateException("Operation named '" + operationName
+ + "' is not defined for Resource type '" + resourceType.getName() + "' in the '"
+ + resourceType.getPlugin() + "' plugin's descriptor.");
+ return operationDefinition;
+ }
+
+ @NotNull
+ private ManagedOperation getManagedOperation(OperationDefinition operationDefinition) {
+ ManagedComponent managedComponent = getManagedComponent();
+ Set<ManagedOperation> operations = managedComponent.getOperations();
+ for (ManagedOperation operation : operations) {
+ ConfigurationDefinition paramsConfigDef = operationDefinition.getParametersConfigurationDefinition();
+ int paramCount = (paramsConfigDef != null) ? paramsConfigDef.getPropertyDefinitions().size() : 0;
+ if (operation.getName().equals(operationDefinition.getName())
+ && (operation.getParameters().length == paramCount))
+ return operation;
+ }
+ throw new IllegalStateException("ManagedOperation named '" + operationDefinition.getName()
+ + "' not found on ManagedComponent [" + getManagedComponent() + "].");
+ }
+
+ private static String toString(ManagedComponent managedComponent) {
+ Map<String, ManagedProperty> properties = managedComponent.getProperties();
+ return managedComponent.getClass().getSimpleName() + "@" + System.identityHashCode(managedComponent) + "["
+ + "type=" + managedComponent.getType() + ", name=" + managedComponent.getName() + ", properties="
+ + properties.getClass().getSimpleName() + "@" + System.identityHashCode(properties) + "]";
+ }
+
+ private static String toString(@NotNull Object value) {
+ if (value.getClass().isArray()) {
+ StringBuilder buffer = new StringBuilder();
+ int lastIndex = Array.getLength(value) - 1;
+ for (int i = 0; i < Array.getLength(value); i++) {
+ buffer.append(String.valueOf(Array.get(value, i)));
+ if (i == lastIndex) {
+ break;
+ }
+ buffer.append(", ");
+ }
+ return buffer.toString();
+ } else {
+ return value.toString();
+ }
+ }
+}
commit 8a5eb613403c7b95f4f9616139db627eeedac989
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Tue Jun 29 22:37:33 2010 -0400
more work on sample bundle scripts
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
index 05f8b79..563858e 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
@@ -35,7 +35,7 @@
* 3) exec <path>/cli-1-createBundle.js
*/
-var bundleName = 'test-bundle-upgrade-ant';
+var bundleName = 'sample-bundle';
var bundleDistroV1Path = '../resources/sample-bundle-v1.zip';
// delete the test bundle if it exists
@@ -43,7 +43,7 @@ var bc = new BundleCriteria();
bc.addFilterName(bundleName);
var bundles = BundleManager.findBundlesByCriteria(bc);
if (null != bundles && bundles.size() > 0) {
- print("\nDeleting sample bundle [" + bundleName + "] to re-run sample scripts...")
+ print("\nDeleting [" + bundleName + "] to re-run sample scripts...")
BundleManager.deleteBundle(bundles.get(0).getId());
}
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
index e4e61ec..0b3bd75 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
@@ -22,45 +22,71 @@
*/
/**
- * Thus test script works with a real env including at least one platform resource and a running agent on
- * said platform. It will deploy an original distro file then upgrade it, utilitizing the
- * Ant bundle system.
+ * This sample script shows how to deploy a Bundle. It deploys the bundle created
+ * by the cli-1-deployBundle.js script. The Bundle uses the Ant Bundle Type provided with
+ * RHQ.
+ * <pre>
+ * Prerequisites:
+ * At least one platform must be in inventory. If the "platforms" group does not exist it will
+ * be created with all platforms as members.
+ *
+ * Usage:
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/cli-1-createBundle.js
+ * </pre>
*/
-var TestsEnabled = true;
+var bundleName = 'sample-bundle';
-var bundleName = 'test-bundle-upgrade-ant';
-var bundleZipFile1 = 'src/test/resources/test-upgrade-bundle-ant1.zip';
-var bundleZipFile2 = 'src/test/resources/test-upgrade-bundle-ant2.zip';
+// get the bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName(bundleName);
+bc.fetchBundleVersions( true );
+var bundles = BundleManager.findBundlesByCriteria(bc);
+Assert.assertTrue( null != bundles && bundles.size() > 0 );
+var bundle = bundles.get(0);
+Assert.assertTrue( null != bundle.getBundleVersions() && bundle.getBundleVersions().size() == 1 );
+var bundleVersion = bundle.getBundleVersions().get(0);
-// note, super-user, will not test any security constraints
-var subject = rhq.login('rhqadmin', 'rhqadmin');
-executeAllTests();
+// Find or create the "platforms" group
+var rgc = new ResourceGroupCriteria();
+rgc.addFilterName("platforms"); // wINdows, lINux
+var groups = ResourceGroupManager.findResourceGroupsByCriteria(rgc);
+var groupId;
+// create if needed (and possible)
+if ( groups.isEmpty() ) {
+ var c = new ResourceCriteria();
+ c.addFilterResourceCategory(ResourceCategory.PLATFORM);
+ var platforms = ResourceManager.findResourcesByCriteria(c);
+ Assert.assertTrue( platforms.size() > 0 );
+
+ var rg = new ResourceGroup("platforms");
+ var platformSet = new java.util.HashSet();
+ platformSet.addAll( platforms );
+ rg.setExplicitResources(platformSet);
+ rg = ResourceGroupManager.createResourceGroup(rg);
+ groupId = rg.getId();
+} else {
+ groupId = groups.get(0).getId();
+}
-rhq.logout();
+// create a destination for the deployment
+var dest = BundleManager.createBundleDestination(bundle.getId(), "sample destination", "sample destination", "/tmp/sample-bundle", groupId);
-function testGroupDeployment() {
- if ( !TestsEnabled ) {
- return;
- }
+// create a config for the V1.0 deployment, setting the required properties for recipe in distro 1.0
+var config1 = new Configuration();
+var property11 = new PropertySimple("sample.name", "V1 Name");
+config1.put( property11 );
+var property12 = new PropertySimple("sample.port", "12345");
+config1.put( property12 );
- var groupId = getGroupId();
- var bundleType = getBundleType();
- Assert.assertNotNull(bundleType, "need ant bundle plugin installed for this test");
- // delete the test bundle if it exists
- var bc = new BundleCriteria();
- bc.addFilterName( bundleName );
- var bundles = BundleManager.findBundlesByCriteria( bc );
- if ( null != bundles && bundles.size() > 0 ) {
- print( "\nDeleting existing test ant bundle in order to test a fresh deploy...")
- BundleManager.deleteBundle( bundles.get(0).getId() );
- }
+// create a deployment for sample bundle 1.0 using the 1.0 config
+var deployment = BundleManager.createBundleDeployment(bundleVersion.getId(), dest.getId(), "Deploying Sample Ant Bundle V1", config1);
+deployment = BundleManager.scheduleBundleDeployment(testDeployment.getId(), true);
+Assert.assertNotNull( deployment, "Failed to create 1.0 deployment" );
- // create bundleVersion 1.0
- var distributionFile1 = new java.io.File(bundleZipFile1);
- distributionFile1 = new java.io.File(distributionFile1.getAbsolutePath());
- Assert.assertTrue(distributionFile1.exists(), "missing ant bundle file 1: " + distributionFile1);
- var testBundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile1 );
+print("\nBundle Deployment Status=" + deployment.getStatus());
commit e95efbb18f704ee8b85c702b7c36d0eeb08bf129
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Tue Jun 29 22:37:01 2010 -0400
Revise tag deletion logic
diff --git a/release.sh b/release.sh
index c4b9e46..5ce7396 100755
--- a/release.sh
+++ b/release.sh
@@ -327,15 +327,6 @@ if [ ! -d "$WORKING_DIR" ]; then
fi
-# If the specified tag already exists then abort. It should not exist since production runs should have
-# unique tags and test runs should have been done in a temporary branch
-
-EXISTING_REMOTE_TAG=`git ls-remote --tags origin "$RELEASE_TAG"`
-if [ -n "$EXISTING_REMOTE_TAG" ]; then
- abort "A remote tag named $RELEASE_TAG already exists - aborting, perhaps a bad build configuration..."
-fi
-
-
# if this is a test build then create a temporary build branch off of RELEASE_BRANCH. This allows checkins to
# continue in RELEASE_BRANCH without affecting the release plugin work, which will fail if the branch contents
# change before it completes.
@@ -360,7 +351,28 @@ fi
# We should now have the build_branch checked out
echo "Current Branch is $BUILD_BRANCH"
-
+
+# If the specified tag already exists remotely and we're in production mode, then abort. If it exists and
+# we're in test mode, delete it
+
+EXISTING_REMOTE_TAG=`git ls-remote --tags origin "$RELEASE_TAG"`
+if [ -n "$EXISTING_REMOTE_TAG" ] && [ "$MODE" = "production" ]; then
+ abort "A remote tag named $RELEASE_TAG already exists - aborting, since we are in production mode..."
+fi
+
+if [ -n "$EXISTING_REMOTE_TAG" ] && [ "$MODE" = "test" ]; then
+ echo "A remote tag named $RELEASE_TAG already exists - deleting it, since we are in test mode..."
+ git push origin ":refs/tags/$RELEASE_TAG"
+ [ "$?" -ne 0 ] && abort "Failed to delete remote tag ($RELEASE_TAG)."
+fi
+
+# See if the specified tag already exists locally - if so, delete it (even if in production mode).
+EXISTING_LOCAL_TAG=`git tag -l "$RELEASE_TAG"`
+if [ -n "$EXISTING_LOCAL_TAG" ]; then
+ echo "A local tag named $RELEASE_TAG already exists - deleting it..."
+ git tag -d "$RELEASE_TAG"
+ [ "$?" -ne 0 ] && abort "Failed to delete local tag ($RELEASE_TAG)."
+fi
# Run a test build before tagging. This will publish the snapshot artifacts to the local repo to "bootstrap" the repo.
commit 27502131a4a4be2e06983cecbbb44361be756267
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Tue Jun 29 17:02:01 2010 -0400
LT commit
diff --git a/modules/enterprise/gui/portal-war/src/main/webapp/admin/config/GeneralPropertiesConfigForm.jsp b/modules/enterprise/gui/portal-war/src/main/webapp/admin/config/GeneralPropertiesConfigForm.jsp
index 30df9ef..45526f7 100644
--- a/modules/enterprise/gui/portal-war/src/main/webapp/admin/config/GeneralPropertiesConfigForm.jsp
+++ b/modules/enterprise/gui/portal-war/src/main/webapp/admin/config/GeneralPropertiesConfigForm.jsp
@@ -1,104 +1,104 @@
-<%@ page language="java" %>
-<%@ page errorPage="/common/Error.jsp" %>
-
-<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt " prefix="fmt" %>
-<%@ taglib uri="http://jakarta.apache.org/struts/tags-html-el " prefix="html" %>
-<%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles " prefix="tiles" %>
-<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic " prefix="logic" %>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
-<%@ taglib uri="/WEB-INF/tld/hq.tld" prefix="hq" %>
-
-<script src="<html:rewrite page="/js/"/>functions.js" type="text/javascript"></script>
-<link rel=stylesheet href="<html:rewrite page="/css/"/>win.css" type="text/css">
-
-<hq:constant
- classname="org.rhq.enterprise.gui.legacy.Constants"
- symbol="MINUTES_LABEL" var="CONST_MINUTES" />
-<hq:constant
- classname="org.rhq.enterprise.gui.legacy.Constants"
- symbol="HOURS_LABEL" var="CONST_HOURS" />
-<hq:constant
- classname="org.rhq.enterprise.gui.legacy.Constants"
- symbol="DAYS_LABEL" var="CONST_DAYS" />
-
-<!-- BASE SERVER CONFIG TITLE -->
-<tiles:insert definition=".header.tab">
- <tiles:put name="tabKey" value="admin.settings.BaseConfigTab"/>
-</tiles:insert>
-<!-- / -->
-
-<!-- BASE SERVER CONFIG CONTENTS -->
-<table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
- <td width="45%" class="BlockLabel"><fmt:message key="admin.settings.BaseURL"/></td>
- <td width="55%" class="BlockContent"><html:text size="31" property="baseUrl" /></td>
- </tr>
- <tr>
- <td class="BlockLabel"><fmt:message key="admin.settings.AgentMaxQuietTimeAllowed"/></td>
- <td class="BlockContent">
- <table width="100%" cellpadding="0" cellspacing="0" border="0">
- <tr>
-<logic:messagesPresent property="agentMaxQuietTimeAllowedVal">
- <td class="ErrorField">
- <html:text size="2" property="agentMaxQuietTimeAllowedVal" />
- </td>
- <td class="ErrorField" width="100%">
- <html:select property="agentMaxQuietTimeAllowed">
- <html:option value="${CONST_MINUTES}"><fmt:message key="admin.settings.Minutes"/></html:option>
- </html:select>
- </td>
-</logic:messagesPresent>
-<logic:messagesNotPresent property="agentMaxQuietTimeAllowedVal">
- <td class="BlockContent">
- <html:text size="2" property="agentMaxQuietTimeAllowedVal" />
- </td>
- <td class="BlockContent" width="100%">
- <html:select property="agentMaxQuietTimeAllowed">
- <html:option value="${CONST_MINUTES}"><fmt:message key="admin.settings.Minutes"/></html:option>
- </html:select>
- </td>
-</logic:messagesNotPresent>
- </tr>
-<logic:messagesPresent property="agentMaxQuietTimeAllowedVal">
- <tr>
- <td class="ErrorField" colspan="2">
- <span class="ErrorFieldContent"> <html:errors property="agentMaxQuietTimeAllowedVal"/></span>
- </td>
- </tr>
-</logic:messagesPresent>
-<logic:messagesNotPresent property="agentMaxQuietTimeAllowedVal">
- <tr>
- <td class="BlockContent" colspan="2">
- </td>
- </tr>
-</logic:messagesNotPresent>
- </table>
- </td>
- </tr>
- <tr>
- <td class="BlockLabel"><fmt:message key="admin.settings.EnableAgentAutoUpdate"/></td>
- <td class="BlockContent">
- <table cellpadding="0" cellspacing="4" border="0">
- <tr>
- <td align="left"><html:radio property="enableAgentAutoUpdate" value="true"/><fmt:message key="yesno.true"/></td>
- <td align="left"><html:radio property="enableAgentAutoUpdate" value="false"/><fmt:message key="yesno.false"/></td>
- </tr>
- </table>
- </td>
- </tr>
-
-<hq:authorization permission="superuser">
- <tr>
- <td class="BlockLabel"><fmt:message key="admin.settings.EnableDebugMode"/></td>
- <td class="BlockContent">
- <table cellpadding="0" cellspacing="4" border="0">
- <tr>
- <td align="left"><html:radio property="enableDebugMode" value="true"/><fmt:message key="yesno.true"/></td>
- <td align="left"><html:radio property="enableDebugMode" value="false"/><fmt:message key="yesno.false"/></td>
- </tr>
- </table>
- </td>
- </tr>
-</hq:authorization>
-
-</table>
+<%@ page language="java" %>
+<%@ page errorPage="/common/Error.jsp" %>
+
+<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt " prefix="fmt" %>
+<%@ taglib uri="http://jakarta.apache.org/struts/tags-html-el " prefix="html" %>
+<%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles " prefix="tiles" %>
+<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic " prefix="logic" %>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@ taglib uri="/WEB-INF/tld/hq.tld" prefix="hq" %>
+
+<script src="<html:rewrite page="/js/"/>functions.js" type="text/javascript"></script>
+<link rel=stylesheet href="<html:rewrite page="/css/"/>win.css" type="text/css">
+
+<hq:constant
+ classname="org.rhq.enterprise.gui.legacy.Constants"
+ symbol="MINUTES_LABEL" var="CONST_MINUTES" />
+<hq:constant
+ classname="org.rhq.enterprise.gui.legacy.Constants"
+ symbol="HOURS_LABEL" var="CONST_HOURS" />
+<hq:constant
+ classname="org.rhq.enterprise.gui.legacy.Constants"
+ symbol="DAYS_LABEL" var="CONST_DAYS" />
+
+<!-- BASE SERVER CONFIG TITLE -->
+<tiles:insert definition=".header.tab">
+ <tiles:put name="tabKey" value="admin.settings.BaseConfigTab"/>
+</tiles:insert>
+<!-- / -->
+
+<!-- BASE SERVER CONFIG CONTENTS -->
+<table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td width="45%" class="BlockLabel"><fmt:message key="admin.settings.BaseURL"/></td>
+ <td width="55%" class="BlockContent"><html:text size="31" property="baseUrl" /></td>
+ </tr>
+ <tr>
+ <td class="BlockLabel"><fmt:message key="admin.settings.AgentMaxQuietTimeAllowed"/></td>
+ <td class="BlockContent">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+<logic:messagesPresent property="agentMaxQuietTimeAllowedVal">
+ <td class="ErrorField">
+ <html:text size="2" property="agentMaxQuietTimeAllowedVal" />
+ </td>
+ <td class="ErrorField" width="100%">
+ <html:select property="agentMaxQuietTimeAllowed">
+ <html:option value="${CONST_MINUTES}"><fmt:message key="admin.settings.Minutes"/></html:option>
+ </html:select>
+ </td>
+</logic:messagesPresent>
+<logic:messagesNotPresent property="agentMaxQuietTimeAllowedVal">
+ <td class="BlockContent">
+ <html:text size="2" property="agentMaxQuietTimeAllowedVal" />
+ </td>
+ <td class="BlockContent" width="100%">
+ <html:select property="agentMaxQuietTimeAllowed">
+ <html:option value="${CONST_MINUTES}"><fmt:message key="admin.settings.Minutes"/></html:option>
+ </html:select>
+ </td>
+</logic:messagesNotPresent>
+ </tr>
+<logic:messagesPresent property="agentMaxQuietTimeAllowedVal">
+ <tr>
+ <td class="ErrorField" colspan="2">
+ <span class="ErrorFieldContent"> <html:errors property="agentMaxQuietTimeAllowedVal"/></span>
+ </td>
+ </tr>
+</logic:messagesPresent>
+<logic:messagesNotPresent property="agentMaxQuietTimeAllowedVal">
+ <tr>
+ <td class="BlockContent" colspan="2">
+ </td>
+ </tr>
+</logic:messagesNotPresent>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td class="BlockLabel"><fmt:message key="admin.settings.EnableAgentAutoUpdate"/></td>
+ <td class="BlockContent">
+ <table cellpadding="0" cellspacing="4" border="0">
+ <tr>
+ <td align="left"><html:radio property="enableAgentAutoUpdate" value="true"/><fmt:message key="yesno.true"/></td>
+ <td align="left"><html:radio property="enableAgentAutoUpdate" value="false"/><fmt:message key="yesno.false"/></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+
+<hq:authorization permission="superuser">
+ <tr>
+ <td class="BlockLabel"><fmt:message key="admin.settings.EnableDebugMode"/></td>
+ <td class="BlockContent">
+ <table cellpadding="0" cellspacing="4" border="0">
+ <tr>
+ <td align="left"><html:radio property="enableDebugMode" value="true"/><fmt:message key="yesno.true"/></td>
+ <td align="left"><html:radio property="enableDebugMode" value="false"/><fmt:message key="yesno.false"/></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</hq:authorization>
+
+</table>
commit fd5b4d0d7b17c983ef5424a372baab9e3fdabf6f
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Tue Jun 29 16:33:27 2010 -0400
Work to perform rhq tag release script in its own branch
diff --git a/release.sh b/release.sh
index 2722eda..c4b9e46 100755
--- a/release.sh
+++ b/release.sh
@@ -286,7 +286,6 @@ cat <<EOF >"${MAVEN_SETTINGS_FILE}"
</settings>
EOF
-
# Clone and/or checkout the source from git.
if [ -d "$WORKING_DIR" ]; then
@@ -328,15 +327,42 @@ if [ ! -d "$WORKING_DIR" ]; then
fi
-# If the specified tag already exists remotely and we're in production mode, then abort. If it exists and we're in test mode, then we'll delete it after we've had a successful dry run of release:prepare and are ready to tag.
+# If the specified tag already exists then abort. It should not exist since production runs should have
+# unique tags and test runs should have been done in a temporary branch
EXISTING_REMOTE_TAG=`git ls-remote --tags origin "$RELEASE_TAG"`
-if [ -n "$EXISTING_REMOTE_TAG" ] && [ "$MODE" = "production" ]; then
- abort "A remote tag named $RELEASE_TAG already exists - aborting, since we are in production mode..."
+if [ -n "$EXISTING_REMOTE_TAG" ]; then
+ abort "A remote tag named $RELEASE_TAG already exists - aborting, perhaps a bad build configuration..."
fi
-# Run a test build before tagging. This will also publish the snapshot artifacts to the local repo to "bootstrap" the repo.
+# if this is a test build then create a temporary build branch off of RELEASE_BRANCH. This allows checkins to
+# continue in RELEASE_BRANCH without affecting the release plugin work, which will fail if the branch contents
+# change before it completes.
+if [ "$MODE" = "production" ]; then
+ BUILD_BRANCH="${RELEASE_BRANCH}"
+else
+ BUILD_BRANCH="${RELEASE_BRANCH}-test-build"
+# delete the branch if it exists, so we can recreate it fresh
+ EXISTING_BUILD_BRANCH=`git ls-remote --heads origin "$BUILD_BRANCH"`
+ if [ "$EXISTING_REMOTE_TAG" ]; then
+ echo "Deleting remote branch origin/$BUILD_BRANCH"
+ git branch -D -r "origin/$BUILD_BRANCH"
+ echo "Deleting local branch $BUILD_BRANCH"
+ git branch -D "$BUILD_BRANCH"
+ fi
+ echo "Creating and checking out local branch $BUILD_BRANCH from $RELEASE_BRANCH"
+ git checkout -b "$BUILD_BRANCH"
+ echo "Creating remote branch $BUILD_BRANCH"
+ git push origin "$BUILD_BRANCH"
+fi
+
+
+# We should now have the build_branch checked out
+echo "Current Branch is $BUILD_BRANCH"
+
+
+# Run a test build before tagging. This will publish the snapshot artifacts to the local repo to "bootstrap" the repo.
echo "Building project to ensure tests pass and to bootstrap local Maven repo (this will take about 15-30 minutes)..."
# NOTE: There is no need to do a mvn clean below, since we just did either a clone or clean checkout above.
@@ -347,42 +373,26 @@ echo "Test build succeeded!"
# Clean up the snapshot jars produced by the test build from module target dirs.
-
echo "Cleaning up snapshot jars produced by test build from module target dirs..."
mvn clean $MAVEN_ARGS
[ "$?" -ne 0 ] && abort "Failed to cleanup snbapshot jars produced by test build from module target dirs. Please see above Maven output for details, fix any issues, then try again."
-# Do a dry run of tagging the release.
+# If this is a production build perform a dry run of tagging the release. Skip this for test builds to reduce the
+# build time
-echo "Doing a dry run of tagging the release..."
-mvn release:prepare $MAVEN_ARGS -DreleaseVersion=$RELEASE_VERSION -DdevelopmentVersion=$DEVELOPMENT_VERSION -Dresume=false -Dtag=$RELEASE_TAG "-DpreparationGoals=install $MAVEN_ARGS -Dmaven.test.skip=true -Ddbsetup-do-not-check-schema=true" -DdryRun=true
-[ "$?" -ne 0 ] && abort "Tagging dry run failed. Please see above Maven output for details, fix any issues, then try again."
-mvn release:clean $MAVEN_ARGS
-[ "$?" -ne 0 ] && abort "Failed to cleanup release plugin working files from tagging dry run. Please see above Maven output for details, fix any issues, then try again."
-echo
-echo "Tagging dry run succeeded!"
-
-
-# If there's an existing remote tag, and we didn't abort earlier, we must be in test mode, so we can safely delete it before we call mvn release:prepare to recreate it.
-
-if [ -n "$EXISTING_REMOTE_TAG" ]; then
- echo "A remote tag named $RELEASE_TAG already exists - deleting it, since we are in test mode..."
- git push origin ":refs/tags/$RELEASE_TAG"
- [ "$?" -ne 0 ] && abort "Failed to delete remote tag ($RELEASE_TAG)."
-fi
-
-
-# See if the specified tag already exists locally - if so, delete it (even if in production mode).
-EXISTING_LOCAL_TAG=`git tag -l "$RELEASE_TAG"`
-if [ -n "$EXISTING_LOCAL_TAG" ]; then
- echo "A local tag named $RELEASE_TAG already exists - deleting it..."
- git tag -d "$RELEASE_TAG"
- [ "$?" -ne 0 ] && abort "Failed to delete local tag ($RELEASE_TAG)."
+if [ "$MODE" = "production" ]; then
+ echo "Doing a dry run of tagging the release..."
+ mvn release:prepare $MAVEN_ARGS -DreleaseVersion=$RELEASE_VERSION -DdevelopmentVersion=$DEVELOPMENT_VERSION -Dresume=false -Dtag=$RELEASE_TAG "-DpreparationGoals=install $MAVEN_ARGS -Dmaven.test.skip=true -Ddbsetup-do-not-check-schema=true" -DdryRun=true
+ [ "$?" -ne 0 ] && abort "Tagging dry run failed. Please see above Maven output for details, fix any issues, then try again."
+ mvn release:clean $MAVEN_ARGS
+ [ "$?" -ne 0 ] && abort "Failed to cleanup release plugin working files from tagging dry run. Please see above Maven output for details, fix any issues, then try again."
+ echo
+ echo "Tagging dry run succeeded!"
fi
-# If the dry run succeeded, tag it for real.
+# If the dry run was skipped or succeeded, tag it for real.
echo "Tagging the release..."
mvn release:prepare $MAVEN_ARGS -DreleaseVersion=$RELEASE_VERSION -DdevelopmentVersion=$DEVELOPMENT_VERSION -Dresume=false -Dtag=$RELEASE_TAG "-DpreparationGoals=install $MAVEN_ARGS -Dmaven.test.skip=true -Ddbsetup-do-not-check-schema=true" -DdryRun=false -Dusername=$GIT_USERNAME
commit c90347b67a11980287c0acce0156b4b7e2a93af8
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Tue Jun 29 16:18:41 2010 -0400
more script work IN PROGRESS
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
index 5c8d36a..05f8b79 100644
--- a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
@@ -22,10 +22,17 @@
*/
/**
- * This sample script shows how to create a Bundle by uploading an existing Bundle Distribution file.
- * The Bundle uses the Ant Bundle Type provided with RHQ.
+ * This sample script shows how to create a Bundle by uploading an existing
+ * Bundle Distribution file. The Bundle uses the Ant Bundle Type provided with
+ * RHQ.
+ * <pre>
* Prerequisites:
- * - The "Ant Bundle Handler Server" resource must be in inventory on the target platforms
+ * none
+ *
+ * Usage:
+ * 1) start the CLI (can be downloaded from the GUI, Administration->Downloads, RHQ Client)
+ * 2) login user password serverHost serverPort
+ * 3) exec <path>/cli-1-createBundle.js
*/
var bundleName = 'test-bundle-upgrade-ant';
@@ -33,23 +40,17 @@ var bundleDistroV1Path = '../resources/sample-bundle-v1.zip';
// delete the test bundle if it exists
var bc = new BundleCriteria();
-bc.addFilterName( bundleName );
-var bundles = BundleManager.findBundlesByCriteria( bc );
-if ( null != bundles && bundles.size() > 0 ) {
- print( "\nDeleting sample bundle [" + bundleName + "] to re-run sample scripts...")
- BundleManager.deleteBundle( bundles.get(0).getId() );
+bc.addFilterName(bundleName);
+var bundles = BundleManager.findBundlesByCriteria(bc);
+if (null != bundles && bundles.size() > 0) {
+ print("\nDeleting sample bundle [" + bundleName + "] to re-run sample scripts...")
+ BundleManager.deleteBundle(bundles.get(0).getId());
}
// create bundleVersion 1.0 for the sample bundle
var distributionFile = new java.io.File(bundleDistroV1Path);
distributionFile = new java.io.File(distributionFile.getAbsolutePath());
Assert.assertTrue(distributionFile.exists(), "Missing ant bundle distribution file: " + distributionFile);
-var bundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile );
-
-print( "\nCreated Bundle [" + bundleVersion1 + "]!")
-
-
-
-
-
+var bundleVersion1 = BundleManager.createBundleVersionViaFile(distributionFile);
+print("\nCreated Bundle [" + bundleVersion1 + "]!")
commit 13c15e74eee55b4910c517419d1e5028a03bf3aa
Merge: a76a1d4... 358f16a...
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Jun 28 16:54:54 2010 -0400
Merge branch 'release-3.0.0' into release-3.0.0-jay
commit a76a1d4d666ce8b69fb111f44ee24f69866d1960
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Jun 28 16:41:00 2010 -0400
Work In Progress - sample provisioning scripts
diff --git a/etc/samples/provisioning/sample-cli/resources/sample-bundle-v1.zip b/etc/samples/provisioning/sample-cli/resources/sample-bundle-v1.zip
new file mode 100644
index 0000000..c044d9a
Binary files /dev/null and b/etc/samples/provisioning/sample-cli/resources/sample-bundle-v1.zip differ
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
new file mode 100644
index 0000000..5c8d36a
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-1-createBundle.js
@@ -0,0 +1,55 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * This sample script shows how to create a Bundle by uploading an existing Bundle Distribution file.
+ * The Bundle uses the Ant Bundle Type provided with RHQ.
+ * Prerequisites:
+ * - The "Ant Bundle Handler Server" resource must be in inventory on the target platforms
+ */
+
+var bundleName = 'test-bundle-upgrade-ant';
+var bundleDistroV1Path = '../resources/sample-bundle-v1.zip';
+
+// delete the test bundle if it exists
+var bc = new BundleCriteria();
+bc.addFilterName( bundleName );
+var bundles = BundleManager.findBundlesByCriteria( bc );
+if ( null != bundles && bundles.size() > 0 ) {
+ print( "\nDeleting sample bundle [" + bundleName + "] to re-run sample scripts...")
+ BundleManager.deleteBundle( bundles.get(0).getId() );
+}
+
+// create bundleVersion 1.0 for the sample bundle
+var distributionFile = new java.io.File(bundleDistroV1Path);
+distributionFile = new java.io.File(distributionFile.getAbsolutePath());
+Assert.assertTrue(distributionFile.exists(), "Missing ant bundle distribution file: " + distributionFile);
+var bundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile );
+
+print( "\nCreated Bundle [" + bundleVersion1 + "]!")
+
+
+
+
+
+
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
new file mode 100644
index 0000000..e4e61ec
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-2-deployBundle.js
@@ -0,0 +1,66 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * Thus test script works with a real env including at least one platform resource and a running agent on
+ * said platform. It will deploy an original distro file then upgrade it, utilitizing the
+ * Ant bundle system.
+ */
+
+var TestsEnabled = true;
+
+var bundleName = 'test-bundle-upgrade-ant';
+var bundleZipFile1 = 'src/test/resources/test-upgrade-bundle-ant1.zip';
+var bundleZipFile2 = 'src/test/resources/test-upgrade-bundle-ant2.zip';
+
+// note, super-user, will not test any security constraints
+var subject = rhq.login('rhqadmin', 'rhqadmin');
+
+executeAllTests();
+
+rhq.logout();
+
+function testGroupDeployment() {
+ if ( !TestsEnabled ) {
+ return;
+ }
+
+ var groupId = getGroupId();
+ var bundleType = getBundleType();
+ Assert.assertNotNull(bundleType, "need ant bundle plugin installed for this test");
+
+ // delete the test bundle if it exists
+ var bc = new BundleCriteria();
+ bc.addFilterName( bundleName );
+ var bundles = BundleManager.findBundlesByCriteria( bc );
+ if ( null != bundles && bundles.size() > 0 ) {
+ print( "\nDeleting existing test ant bundle in order to test a fresh deploy...")
+ BundleManager.deleteBundle( bundles.get(0).getId() );
+ }
+
+ // create bundleVersion 1.0
+ var distributionFile1 = new java.io.File(bundleZipFile1);
+ distributionFile1 = new java.io.File(distributionFile1.getAbsolutePath());
+ Assert.assertTrue(distributionFile1.exists(), "missing ant bundle file 1: " + distributionFile1);
+ var testBundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile1 );
+
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
new file mode 100644
index 0000000..e4e61ec
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-3-upgradeBundle.js
@@ -0,0 +1,66 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * Thus test script works with a real env including at least one platform resource and a running agent on
+ * said platform. It will deploy an original distro file then upgrade it, utilitizing the
+ * Ant bundle system.
+ */
+
+var TestsEnabled = true;
+
+var bundleName = 'test-bundle-upgrade-ant';
+var bundleZipFile1 = 'src/test/resources/test-upgrade-bundle-ant1.zip';
+var bundleZipFile2 = 'src/test/resources/test-upgrade-bundle-ant2.zip';
+
+// note, super-user, will not test any security constraints
+var subject = rhq.login('rhqadmin', 'rhqadmin');
+
+executeAllTests();
+
+rhq.logout();
+
+function testGroupDeployment() {
+ if ( !TestsEnabled ) {
+ return;
+ }
+
+ var groupId = getGroupId();
+ var bundleType = getBundleType();
+ Assert.assertNotNull(bundleType, "need ant bundle plugin installed for this test");
+
+ // delete the test bundle if it exists
+ var bc = new BundleCriteria();
+ bc.addFilterName( bundleName );
+ var bundles = BundleManager.findBundlesByCriteria( bc );
+ if ( null != bundles && bundles.size() > 0 ) {
+ print( "\nDeleting existing test ant bundle in order to test a fresh deploy...")
+ BundleManager.deleteBundle( bundles.get(0).getId() );
+ }
+
+ // create bundleVersion 1.0
+ var distributionFile1 = new java.io.File(bundleZipFile1);
+ distributionFile1 = new java.io.File(distributionFile1.getAbsolutePath());
+ Assert.assertTrue(distributionFile1.exists(), "missing ant bundle file 1: " + distributionFile1);
+ var testBundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile1 );
+
diff --git a/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js b/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
new file mode 100644
index 0000000..e4e61ec
--- /dev/null
+++ b/etc/samples/provisioning/sample-cli/scripts/cli-4-revertBundle.js
@@ -0,0 +1,66 @@
+/*
+ * RHQ Management Platform
+ * Copyright (C) 2005-2010 Red Hat, Inc.
+ * All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License, version 2, as
+ * published by the Free Software Foundation, and/or the GNU Lesser
+ * General Public License, version 2.1, also as published by the Free
+ * Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License and the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * and the GNU Lesser General Public License along with this program;
+ * if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/**
+ * Thus test script works with a real env including at least one platform resource and a running agent on
+ * said platform. It will deploy an original distro file then upgrade it, utilitizing the
+ * Ant bundle system.
+ */
+
+var TestsEnabled = true;
+
+var bundleName = 'test-bundle-upgrade-ant';
+var bundleZipFile1 = 'src/test/resources/test-upgrade-bundle-ant1.zip';
+var bundleZipFile2 = 'src/test/resources/test-upgrade-bundle-ant2.zip';
+
+// note, super-user, will not test any security constraints
+var subject = rhq.login('rhqadmin', 'rhqadmin');
+
+executeAllTests();
+
+rhq.logout();
+
+function testGroupDeployment() {
+ if ( !TestsEnabled ) {
+ return;
+ }
+
+ var groupId = getGroupId();
+ var bundleType = getBundleType();
+ Assert.assertNotNull(bundleType, "need ant bundle plugin installed for this test");
+
+ // delete the test bundle if it exists
+ var bc = new BundleCriteria();
+ bc.addFilterName( bundleName );
+ var bundles = BundleManager.findBundlesByCriteria( bc );
+ if ( null != bundles && bundles.size() > 0 ) {
+ print( "\nDeleting existing test ant bundle in order to test a fresh deploy...")
+ BundleManager.deleteBundle( bundles.get(0).getId() );
+ }
+
+ // create bundleVersion 1.0
+ var distributionFile1 = new java.io.File(bundleZipFile1);
+ distributionFile1 = new java.io.File(distributionFile1.getAbsolutePath());
+ Assert.assertTrue(distributionFile1.exists(), "missing ant bundle file 1: " + distributionFile1);
+ var testBundleVersion1 = BundleManager.createBundleVersionViaFile( distributionFile1 );
+
commit 5c1112f7c170af81986456808ba1fee557c58036
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Jun 28 16:37:11 2010 -0400
[BZ 604471] Make the Bundle Handler resources Services under the platform
as opposed to Server resources. In this way the user does not have to
explicitly import them and provisioning will be supported out of the box.
They do still show up as children under the platform resource.
diff --git a/modules/plugins/ant-bundle/src/main/java/org/rhq/plugins/ant/AntBundlePluginDiscoveryComponent.java b/modules/plugins/ant-bundle/src/main/java/org/rhq/plugins/ant/AntBundlePluginDiscoveryComponent.java
index 50a2f86..33da95d 100644
--- a/modules/plugins/ant-bundle/src/main/java/org/rhq/plugins/ant/AntBundlePluginDiscoveryComponent.java
+++ b/modules/plugins/ant-bundle/src/main/java/org/rhq/plugins/ant/AntBundlePluginDiscoveryComponent.java
@@ -37,9 +37,9 @@ public class AntBundlePluginDiscoveryComponent implements ResourceDiscoveryCompo
HashSet<DiscoveredResourceDetails> set = new HashSet<DiscoveredResourceDetails>();
String key = "ant-bundle";
- String name = "Ant Bundle Handler";
+ String name = "Bundle Handler - Ant";
String version = this.getClass().getPackage().getImplementationVersion();
- String description = "Processes bundles whose recipes are Ant scripts";
+ String description = "For provisioning bundles with Ant script recipes";
DiscoveredResourceDetails resource = new DiscoveredResourceDetails(context.getResourceType(), key, name,
version, description, null, null);
diff --git a/modules/plugins/ant-bundle/src/main/resources/META-INF/rhq-plugin.xml b/modules/plugins/ant-bundle/src/main/resources/META-INF/rhq-plugin.xml
index ce2b150..529507d 100644
--- a/modules/plugins/ant-bundle/src/main/resources/META-INF/rhq-plugin.xml
+++ b/modules/plugins/ant-bundle/src/main/resources/META-INF/rhq-plugin.xml
@@ -7,14 +7,23 @@
xmlns="urn:xmlns:rhq-plugin"
xmlns:c="urn:xmlns:rhq-configuration">
-
- <server name="Ant Bundle Handler Server"
+ <service name="Ant Bundle Handler"
discovery="AntBundlePluginDiscoveryComponent"
class="AntBundlePluginComponent"
singleton="true"
description="This plugin is used to process Ant bundles">
+ <runs-inside>
+ <parent-resource-type name="Windows" plugin="Platforms"/>
+ <parent-resource-type name="Linux" plugin="Platforms"/>
+ <parent-resource-type name="Solaris" plugin="Platforms"/>
+ <parent-resource-type name="HP-UX" plugin="Platforms"/>
+ <parent-resource-type name="AIX" plugin="Platforms"/>
+ <parent-resource-type name="FreeBSD" plugin="Platforms"/>
+ <parent-resource-type name="Mac OS X" plugin="Platforms"/>
+ </runs-inside>
+
<bundle type="Ant Bundle" />
- </server>
+ </service>
</plugin>
diff --git a/modules/plugins/filetemplate-bundle/src/main/java/org/rhq/plugins/filetemplate/FileTemplateBundlePluginDiscoveryComponent.java b/modules/plugins/filetemplate-bundle/src/main/java/org/rhq/plugins/filetemplate/FileTemplateBundlePluginDiscoveryComponent.java
index faae71d..8562eeb 100644
--- a/modules/plugins/filetemplate-bundle/src/main/java/org/rhq/plugins/filetemplate/FileTemplateBundlePluginDiscoveryComponent.java
+++ b/modules/plugins/filetemplate-bundle/src/main/java/org/rhq/plugins/filetemplate/FileTemplateBundlePluginDiscoveryComponent.java
@@ -37,9 +37,9 @@ public class FileTemplateBundlePluginDiscoveryComponent implements ResourceDisco
HashSet<DiscoveredResourceDetails> set = new HashSet<DiscoveredResourceDetails>();
String key = "file-template-bundle";
- String name = "File Template Bundle Handler";
+ String name = "Bundle Handler - File Template";
String version = this.getClass().getPackage().getImplementationVersion();
- String description = "Processes file template bundles";
+ String description = "For provisioning bundles with File Template recipes";
DiscoveredResourceDetails resource = new DiscoveredResourceDetails(context.getResourceType(), key, name,
version, description, null, null);
diff --git a/modules/plugins/filetemplate-bundle/src/main/resources/META-INF/rhq-plugin.xml b/modules/plugins/filetemplate-bundle/src/main/resources/META-INF/rhq-plugin.xml
index a07d411..98132f5 100644
--- a/modules/plugins/filetemplate-bundle/src/main/resources/META-INF/rhq-plugin.xml
+++ b/modules/plugins/filetemplate-bundle/src/main/resources/META-INF/rhq-plugin.xml
@@ -8,13 +8,23 @@
xmlns:c="urn:xmlns:rhq-configuration">
- <server name="File Template Bundle Handler Server"
+ <service name="File Template Bundle Handler"
discovery="FileTemplateBundlePluginDiscoveryComponent"
class="FileTemplateBundlePluginServerComponent"
singleton="true"
description="This plugin is used to process File Template bundles">
+ <runs-inside>
+ <parent-resource-type name="Windows" plugin="Platforms"/>
+ <parent-resource-type name="Linux" plugin="Platforms"/>
+ <parent-resource-type name="Solaris" plugin="Platforms"/>
+ <parent-resource-type name="HP-UX" plugin="Platforms"/>
+ <parent-resource-type name="AIX" plugin="Platforms"/>
+ <parent-resource-type name="FreeBSD" plugin="Platforms"/>
+ <parent-resource-type name="Mac OS X" plugin="Platforms"/>
+ </runs-inside>
+
<bundle type="File Template Bundle" />
- </server>
+ </service>
</plugin>
commit 11ecc3d372952e868fde0c003dae356aebb7adda
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Jun 28 16:30:27 2010 -0400
Move etc/samples/sample-bundle to etc/samples/provisioning/sample-bundle
diff --git a/etc/samples/provisioning/sample-bundle/pom.xml b/etc/samples/provisioning/sample-bundle/pom.xml
new file mode 100644
index 0000000..6bd4a88
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/pom.xml
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<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>
+
+ <groupId>org.rhq.sample</groupId>
+ <artifactId>rhq-sample-bundle</artifactId>
+ <version>2.0</version>
+ <packaging>pom</packaging>
+
+ <name>RHQ Sample Bundle</name>
+ <description>a sample bundle consisting of JBossAS 6.0 running the Java Petstore application</description>
+
+ <scm>
+ <connection>scm:git:ssh://git.fedorahosted.org/git/rhq.git/etc/modules/sample-bundle/ </connection>
+ <developerConnection>scm:git:ssh://git.fedorahosted.org/git/rhq.git/etc/modules/sample-bundle/ </developerConnection>
+ </scm>
+
+ <properties>
+ <!-- dependency versions -->
+ <derbyclient.version>10.5.3.0_1</derbyclient.version>
+ </properties>
+
+ <dependencies>
+
+ <!-- Derby JDBC driver -->
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derbyclient</artifactId>
+ <version>${derbyclient.version}</version>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+
+ <plugins>
+
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>prepare-bundle</id>
+ <phase>process-resources</phase>
+ <configuration>
+ <tasks>
+ <echo>settings.localRepository=${settings.localRepository}</echo>
+ <echo>project.build.outputDirectory=${project.build.outputDirectory}</echo>
+ <ant antfile="src/main/scripts/build.xml">
+ <property name="settings.localRepository" value="${settings.localRepository}"/>
+ <property name="project.version" value="${project.version}"/>
+ <property name="project.build.outputDirectory" value="${project.build.outputDirectory}"/>
+ <property name="derbyclient.version" value="${derbyclient.version}"/>
+ </ant>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/main/scripts/assembly.xml</descriptor>
+ </descriptors>
+ <finalName>${project.build.finalName}</finalName>
+ </configuration>
+ <executions>
+ <execution>
+ <id>assemble-bundle</id>
+ <phase>package</phase>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ </plugins>
+ </build>
+
+</project>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/bundle/deploy.xml b/etc/samples/provisioning/sample-bundle/src/main/bundle/deploy.xml
new file mode 100644
index 0000000..8bfec17
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/bundle/deploy.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+
+<project name="petstore" default="main"
+ xmlns:rhq="antlib:org.rhq.bundle">
+
+ <rhq:bundle name="Java Petstore" version="2.0"
+ description="a sample bundle consisting of JBossAS 6.0 running the Java Petstore application">
+
+ <rhq:input-property
+ name="jboss.bind.address"
+ description="the IP address the JBoss AS server should bind to"
+ required="true"/>
+
+ <rhq:input-property
+ name="http.port"
+ description="the HTTP port the JBoss AS server should listen on"
+ required="true"
+ type="integer"/>
+
+ <rhq:input-property
+ name="https.port"
+ description="the HTTPS port the JBoss AS server should listen on"
+ required="true"
+ type="integer"/>
+
+ <rhq:deployment-unit name="appserver"
+ preinstallTarget="appserver-preinstall" postinstallTarget="appserver-postinstall">
+ <rhq:system-service name="jbossas-petstore" scriptFile="jbossas-init-script"
+ configFile="jbossas-init-config" overwriteScript="true"
+ startLevels="3,4,5" startPriority="80" stopPriority="20"/>
+
+ <rhq:archive name="jbossas-petstore.zip"/>
+
+ <!-- the files that should be ignored during upgrades -->
+ <rhq:ignore>
+ <rhq:fileset>
+ <include name="server/default/data/**"/>
+ <include name="server/default/logs/**"/>
+ <include name="server/default/tmp/**"/>
+ <include name="server/default/work/**"/>
+ </rhq:fileset>
+ </rhq:ignore>
+ </rhq:deployment-unit>
+
+ </rhq:bundle>
+
+ <target name="main"/>
+
+ <target name="appserver-preinstall">
+ <echo>Installing Java Petstore App Server to ${rhq.deploy.dir}...</echo>
+ </target>
+
+ <target name="appserver-postinstall">
+ <echo>Done installing Java Petstore App Server to ${rhq.deploy.dir}.</echo>
+ </target>
+
+</project>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/bundle/jbossas-init-config b/etc/samples/provisioning/sample-bundle/src/main/bundle/jbossas-init-config
new file mode 100644
index 0000000..a2fc4c1
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/bundle/jbossas-init-config
@@ -0,0 +1,69 @@
+# Configuration file for jbossas init script that configures the
+# settings needed to start a particular JBoss AS instance.
+
+#
+# the JBoss AS installation directory (e.g. /opt/jboss-6.0.0.M1)
+# (*REQUIRED*)
+#
+JBOSS_HOME="@@rhq.deploy.dir(a)@"
+
+#
+# the args that will be passed to run.sh
+# (i.e. org.jboss.Main).
+#
+JBOSS_OPTS="-b @@jboss.bind.address(a)@"
+
+# What UNIX user the JBoss AS java process will run as.
+# (The shutdown client is always run as the invoker of the
+# init script). JBoss AS will be run as root by default, but, for
+# the sake of security, it is recommended that you chown the JBoss
+# AS installation files to a non-root user and use that use here.
+# Note, you do need to run as root if your server will listen on one
+# or more privileged (< 1024) ports. If you really do want to run as
+# root, comment out the JBOSS_USER variable completely (i.e. do not
+# set it to root). This will run the server process without "su".
+#JBOSS_USER=jboss
+
+#
+# Specify the maximum file descriptor limit, use "max" or "maximum" to use
+# the default, as queried by the system.
+#
+# Defaults to "maximum"
+#
+#MAX_FD="maximum"
+
+#
+# Specify the profiler configuration file to load.
+#
+# Default is to not load profiler configuration file.
+#
+#PROFILER=
+
+#
+# Specify the location of the Java Rntime Environment (JRE) or
+# Java Development Kit (JDK) installation directory. If not set,
+# "/usr/java/default" will be used.
+#
+#JAVA_HOME="/usr/java/default"
+
+#
+# Specify options to pass to the Java VM (if unset, a default
+# set of options will be used).
+#
+# Note, if you want to pass the default options but some of
+# your own additional options in, then set the
+# ADDITIONAL_JAVA_OPTS variable (see below), rather than JAVA_OPTS.
+#
+#JAVA_OPTS="-Xms128M -Xmx512M -XX:MaxPermSize=256M -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.net.preferIPv4Stack=true"
+
+#
+# Specify additional options to pass to the Java VM. These are passed
+# in addition to the default set of options,
+# i.e. java $JAVA_OPTS $ADDITIONAL_JAVA_OPTS ... org.jboss.Main ...
+#
+# Sample JPDA settings (uncomment either a) or b))
+# a) remote socket debugging
+#ADDITIONAL_JAVA_OPTS="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
+# b) shared memory debugging
+#ADDITIONAL_JAVA_OPTS="-Xrunjdwp:transport=dt_shmem,server=y,suspend=n,address=jboss"
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/bundle/jbossas-init-script b/etc/samples/provisioning/sample-bundle/src/main/bundle/jbossas-init-script
new file mode 100644
index 0000000..58eb98e
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/bundle/jbossas-init-script
@@ -0,0 +1,328 @@
+#!/bin/bash
+#
+# jbossas - This shell script takes care of starting and stopping
+# a JBoss Application Server (AS) instance on a Red Hat
+# Linux system. It can be run as a system service (init
+# script) and/or run manually.
+#
+# chkconfig: 345 84 16
+# description: JBoss AS server
+# processname: java
+# pidfile: /var/run/jbossas.pid
+
+# Source init-script function library.
+FUNCTIONS=/etc/rc.d/init.d/functions
+if [ ! -f "$FUNCTIONS" ]; then
+ echo "Functions library ($FUNCTIONS) not found." >&2
+ exit 1
+fi
+. $FUNCTIONS
+
+# Find the name of this service (e.g. "jbossas").
+NAME=`basename $0`
+if [ ${NAME:0:1} = "S" -o ${NAME:0:1} = "K" ]; then
+ NAME=${NAME:3}
+fi
+
+# Set names of pid, lock, and log files - all based on the service name.
+PIDFILE="/var/run/$NAME.pid"
+LOCKFILE="/var/lock/subsys/$NAME"
+LOGFILE="/var/log/$NAME.log"
+
+# Set defaults for optional configuration variables.
+JAVA_HOME="/usr/java/default"
+JAVA_OPTS="-Xms128M -Xmx512M -XX:MaxPermSize=256M"
+JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
+# (Prefer IPv4 stack as as temporary workaround to avoid 'all' config startup
+# issues from IPv4 multicast addresses. See JBAS-7936.)
+JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
+
+# Source the service's config file, potentially overriding the defaults set
+# above.
+CONFIG="/etc/sysconfig/${NAME}"
+if [ ! -f "$CONFIG" ]; then
+ echo "Required configuration file $CONFIG not found." >&2
+ exit 1
+fi
+. "$CONFIG"
+
+# Bail out if required variables were not set in the config file.
+if [ -z "$JBOSS_HOME" ]; then
+ echo "Required variable JBOSS_HOME was not set in $CONFIG." >&2
+ exit 1
+fi
+
+
+start()
+{
+ # See if the service is already running, and, if so, exit with an error.
+ PID=`pidfileofproc "$NAME"`
+ if [ -n "$PID" ]; then
+ # pid file exists - see if process is actually running.
+ kill -0 $PID 2>/dev/null
+ if [ $? -eq 0 ]; then
+ echo "$NAME service is already running (pid=$PID)." >&2
+ exit 1
+ else
+ echo "Removing bogus pid file $PIDFILE..."
+ rm -f "$PIDFILE"
+ if [ -f "$LOCKFILE" ]; then
+ echo "Removing bogus lock file $LOCKFILE..."
+ rm -f "$LOCKFILE"
+ fi
+ fi
+ fi
+
+ # Check that JAVA_HOME is valid.
+ JAVA="$JAVA_HOME/bin/java"
+ if [ ! -f "$JAVA" ]; then
+ echo "Java not found at $JAVA - please set JAVA_HOME in $CONFIG." >&2
+ exit 1
+ fi
+ if [ ! -x "$JAVA" ]; then
+ echo "$JAVA is not executable." >&2
+ exit 5
+ fi
+
+ # Setup the classpath
+ JBOSS_BOOT_CLASSPATH="$JBOSS_HOME/bin/run.jar"
+ if [ ! -f "$JBOSS_BOOT_CLASSPATH" ]; then
+ echo "Missing required file: $JBOSS_BOOT_CLASSPATH" >&2
+ exit 1
+ fi
+
+ # By default, Tomcat uses the JDT Compiler for compiling JSPs. However,
+ # include tools.jar in the classpath if we can find it under JAVA_HOME
+ # or if the user specified it via the JAVAC_JAR variable.
+ JAVAC_JAR_FILE="${JAVAC_JAR:-$JAVA_HOME/lib/tools.jar}"
+ if [ ! -f "$JAVAC_JAR_FILE" ]; then
+ [ -n "$JAVAC_JAR" ] && echo "Missing javac jar file $JAVAC_JAR as defined by the JAVAC_JAR variable. Unexpected results may occur."
+ unset JAVAC_JAR_FILE
+ fi
+
+ # If -server not set in JAVA_OPTS, set it, if supported.
+ SERVER_SET=`echo $JAVA_OPTS | grep "\-server"`
+ if [ -z "$SERVER_SET" ]; then
+ # Check for Sun JVM w/ HotSpot support.
+ HAS_HOTSPOT=`"$JAVA" -version 2>&1 | grep -i HotSpot`
+
+ # Check for OpenJDK JVM w/ server support.
+ HAS_OPENJDK=`"$JAVA" -version 2>&1 | grep -i OpenJDK`
+
+ # Enable -server if we have Hotspot or OpenJDK, unless we can't
+ if [ -n "$HAS_HOTSPOT" ] || [ -n "$HAS_OPENJDK" ]; then
+ JAVA_OPTS="-server $JAVA_OPTS"
+ fi
+ fi
+
+ # Setup JBoss-specific properties.
+ JAVA_OPTS="-Dprogram.name=$NAME $JAVA_OPTS"
+
+ # Setup JBoss Native library path.
+ unset JBOSS_NATIVE_DIR
+ for DIR in "$JBOSS_HOME/../native/lib" "$JBOSS_HOME/../native" "$JBOSS_HOME/../native/lib64" "$JBOSS_HOME/native/lib64" "$JBOSS_HOME/native/bin" "$JBOSS_HOME/bin/native"; do
+ if [ -d "$DIR" ]; then
+ JBOSS_NATIVE_DIR=`cd "$DIR/.." && pwd`
+ break
+ fi
+ done
+ if [ -d "$JBOSS_NATIVE_DIR" ]; then
+ IS_64_BIT_JVM=`"$JAVA" $JAVA_OPTS -version 2>&1 | grep -i 64-bit`
+ if [ -n "$IS_64_BIT_JVM" ]; then
+ JBOSS_NATIVE_DIR="$JBOSS_NATIVE_DIR/lib64"
+ else
+ JBOSS_NATIVE_DIR="$JBOSS_NATIVE_DIR/lib"
+ fi
+ LD_LIBRARY_PATH="$JBOSS_NATIVE_DIR${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+ export LD_LIBRARY_PATH
+ JAVA_OPTS="$JAVA_OPTS -Djava.library.path=$LD_LIBRARY_PATH"
+ fi
+
+ # Setup the Java endorsed dirs.
+ JBOSS_ENDORSED_DIRS="$JBOSS_HOME/lib/endorsed"
+ JAVA_OPTS="$JAVA_OPTS -Djava.endorsed.dirs=\"$JBOSS_ENDORSED_DIRS\""
+
+ # Setup the Java classpath.
+ JBOSS_CLASSPATH="${JBOSS_CLASSPATH:+$JBOSS_CLASSPATH:$JBOSS_BOOT_CLASSPATH}"
+ JBOSS_CLASSPATH="${JBOSS_CLASSPATH:-$JBOSS_BOOT_CLASSPATH}"
+ JBOSS_CLASSPATH="$JBOSS_CLASSPATH${JAVAC_JAR_FILE:+:$JAVAC_JAR_FILE}"
+ JAVA_OPTS="$JAVA_OPTS -classpath \"$JBOSS_CLASSPATH\""
+
+ # Display a summary of our environment if we're associated with a terminal.
+ if tty -s; then
+ echo "========================================================================="; echo
+ echo " JBoss AS Bootstrap Environment" ; echo
+ echo " JBOSS_HOME: $JBOSS_HOME" ; echo
+ echo " JAVA: $JAVA" ; echo
+ echo " JAVA_OPTS: $JAVA_OPTS" ; echo
+ echo " JBOSS_OPTS: $JBOSS_OPTS" ; echo
+ echo "========================================================================="; echo
+ fi
+
+ # JBoss AS expects its current working dir to be $JBOSS_HOME/bin
+ cd "$JBOSS_HOME/bin"
+
+ # JBoss AS expects JBOSS_HOME to be set in its environment.
+ export JBOSS_HOME
+
+ # We only need to bother with nohup if we're associated with a terminal.
+ if tty -s; then
+ NOHUP=nohup
+ else
+ unset NOHUP
+ fi
+
+ # If they set NICELEVEL in the config file, honor it.
+ [ -n "${NICELEVEL:-}" ] && NICE="nice -n $NICELEVEL"
+
+ # If JBOSS_USER was specified in the config and current user is root, we
+ # want to setuid the JBoss AS process to JBOSS_USER.
+ if [ -n "$JBOSS_USER" ] && [ "$EUID" -eq 0 ]; then
+ # For SELinux we need to use 'runuser', not 'su'.
+ if [ -x /sbin/runuser ]; then
+ SU=runuser
+ else
+ SU=su
+ fi
+ else
+ unset SU
+ fi
+
+ if [ -n "$SU" ]; then
+ WRAPPER="$NOHUP $NICE $SU -s /bin/bash - $JBOSS_USER -c"
+ else
+ WRAPPER="$NOHUP $NICE bash -c"
+ fi
+
+ # Make sure log file exists and has correct ownership and permissions.
+ if [ "$EUID" -eq 0 ]; then
+ touch -a "$LOGFILE" || exit 4
+ [ -n "$JBOSS_USER" ] && chown $JBOSS_USER "$LOGFILE"
+ [ -n "$JBOSS_GROUP" ] && chgrp $JBOSS_GROUP "$LOGFILE"
+ chmod u=rw "$LOGFILE"
+ [ -n "$JBOSS_GROUP" ] && chmod g+r "$LOGFILE"
+ [ -x /sbin/restorecon ] && /sbin/restorecon "$LOGFILE"
+ fi
+
+ # Make sure pid file has correct ownership and permissions.
+ if [ "$EUID" -eq 0 ] && [ -f "$PIDFILE" ]; then
+ [ -n "$JBOSS_USER" ] && chown $JBOSS_USER "$PIDFILE"
+ [ -n "$JBOSS_GROUP" ] && chgrp $JBOSS_GROUP "$PIDFILE"
+ chmod u=rw "$PIDFILE"
+ [ -n "$JBOSS_GROUP" ] && chmod g+r
+ [ -x /sbin/restorecon ] && /sbin/restorecon "$PIDFILE"
+ fi
+
+ echo -n "Starting $NAME service: "
+
+ # Make sure to escape the $$'s within the subshell to prevent our own shell
+ # from evaluating them and writing our own pid to the pid file.
+ $WRAPPER "echo \$\$ >\"$PIDFILE\" || ( echo \"Failed to write pid (\$\$) to $PIDFILE.\" >&2; exit 4 ); exec \"$JAVA\" $JAVA_OPTS org.jboss.Main $JBOSS_OPTS" >>"$LOGFILE" 2>&1 &
+ if [ $? -ne 0 ]; then
+ failure "$NAME startup"
+ echo
+ EXIT_STATUS=$?
+ fi
+
+ # Wait a few seconds and then check that the process is running. Note, this
+ # will *not* verify that JBoss AS started properly without any configuration
+ # or deployment errors.
+ sleep 3
+
+ if pidfileofproc "$NAME"; then
+ success "$NAME startup"
+ echo
+ touch "$LOCKFILE"
+ EXIT_STATUS=0
+ else
+ failure "$NAME startup"
+ echo
+ EXIT_STATUS=1
+ fi
+}
+
+stop()
+{
+ # See if service is running, and, if not, exit without any error.
+ PID=`pidfileofproc "$NAME"`
+ unset NOT_RUNNING
+ if [ -z "$PID" ]; then
+ NOT_RUNNING=1
+ else
+ # pid file exists - see if process is actually running.
+ kill -0 $PID 2>/dev/null
+ if [ $? -ne 0 ]; then
+ NOT_RUNNING=1
+ if [ -f "$PIDFILE" ]; then
+ echo "Removing bogus pid file $PIDFILE..."
+ rm -f "$PIDFILE"
+ fi
+ if [ -f "$LOCKFILE" ]; then
+ echo "Removing bogus lock file $LOCKFILE..."
+ rm -f "$LOCKFILE"
+ fi
+ fi
+ fi
+ if [ -n "$NOT_RUNNING" ]; then
+ echo "$NAME service is not running."
+ exit 0
+ fi
+
+ echo -n "Stopping $NAME service: "
+ killproc -d 30 "$NAME"
+ EXIT_STATUS=$?
+ if [ $EXIT_STATUS -eq 0 ]; then
+ rm -f "$LOCKFILE"
+ fi
+ echo
+}
+
+# NOTE: We don't name this function 'status', since that would override the
+# 'status function defined in /etc/init.d/functions.
+_status()
+{
+ status "$NAME"
+ EXIT_CODE=$?
+}
+
+restart()
+{
+ stop || exit $?
+ start
+}
+
+condrestart()
+{
+ [ -f "$PIDFILE" ] && restart
+}
+
+usage()
+{
+ echo "Usage: $NAME {start|stop|status|restart|condrestart}" >&2
+ EXIT_CODE=2
+}
+
+# The
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ status)
+ _status
+ ;;
+ restart)
+ restart
+ ;;
+ condrestart)
+ condrestart
+ ;;
+ *)
+ usage
+ ;;
+esac
+
+exit $EXIT_STATUS
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/petstore-db.changelog.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/petstore-db.changelog.xml
new file mode 100644
index 0000000..42ced88
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/petstore-db.changelog.xml
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9 " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9 http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd ">
+ <changeSet author="ips (generated)" id="1272025063915-1">
+ <createTable schemaName="APP" tableName="ADDRESS">
+ <column name="ADDRESSID" type="VARCHAR(10)">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173635960"/>
+ </column>
+ <column name="STREET1" type="VARCHAR(55)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="STREET2" type="VARCHAR(55)"/>
+ <column name="CITY" type="VARCHAR(55)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="STATE" type="VARCHAR(25)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="ZIP" type="VARCHAR(5)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="LATITUDE" type="DECIMAL(14,10)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="LONGITUDE" type="DECIMAL(14,10)">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-2">
+ <createTable schemaName="APP" tableName="CATEGORY">
+ <column name="CATEGORYID" type="VARCHAR(10)">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173635550"/>
+ </column>
+ <column name="NAME" type="VARCHAR(25)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="DESCRIPTION" type="VARCHAR(255)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="IMAGEURL" type="VARCHAR(55)"/>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-3">
+ <createTable schemaName="APP" tableName="ID_GEN">
+ <column name="GEN_KEY" type="VARCHAR(20)">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636590"/>
+ </column>
+ <column name="GEN_VALUE" type="INT">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-4">
+ <createTable schemaName="APP" tableName="ITEM">
+ <column name="ITEMID" type="VARCHAR(10)">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636230"/>
+ </column>
+ <column name="PRODUCTID" type="VARCHAR(10)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="NAME" type="VARCHAR(30)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="DESCRIPTION" type="VARCHAR(500)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="IMAGEURL" type="VARCHAR(55)"/>
+ <column name="IMAGETHUMBURL" type="VARCHAR(55)"/>
+ <column name="PRICE" type="DECIMAL(14,2)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="ADDRESS_ADDRESSID" type="VARCHAR(10)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="CONTACTINFO_CONTACTINFOID" type="VARCHAR(10)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="TOTALSCORE" type="INT">
+ <constraints nullable="false"/>
+ </column>
+ <column name="NUMBEROFVOTES" type="INT">
+ <constraints nullable="false"/>
+ </column>
+ <column name="DISABLED" type="INT">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-5">
+ <createTable schemaName="APP" tableName="PRODUCT">
+ <column name="PRODUCTID" type="VARCHAR(10)">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173635740"/>
+ </column>
+ <column name="CATEGORYID" type="VARCHAR(10)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="NAME" type="VARCHAR(25)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="DESCRIPTION" type="VARCHAR(255)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="IMAGEURL" type="VARCHAR(55)"/>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-6">
+ <createTable schemaName="APP" tableName="SELLERCONTACTINFO">
+ <column name="CONTACTINFOID" type="VARCHAR(10)">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636080"/>
+ </column>
+ <column name="LASTNAME" type="VARCHAR(24)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="FIRSTNAME" type="VARCHAR(24)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="EMAIL" type="VARCHAR(24)">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-7">
+ <createTable schemaName="APP" tableName="TAG">
+ <column name="TAGID" type="INT">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636830"/>
+ </column>
+ <column name="TAG" type="VARCHAR(30)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="REFCOUNT" type="INT">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-8">
+ <createTable schemaName="APP" tableName="TAG_ITEM">
+ <column name="TAGID" type="INT">
+ <constraints nullable="false"/>
+ </column>
+ <column name="ITEMID" type="VARCHAR(10)">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-9">
+ <createTable schemaName="APP" tableName="ZIPLOCATION">
+ <column name="ZIPCODE" type="INT">
+ <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636710"/>
+ </column>
+ <column name="CITY" type="VARCHAR(30)">
+ <constraints nullable="false"/>
+ </column>
+ <column name="STATE" type="VARCHAR(2)">
+ <constraints nullable="false"/>
+ </column>
+ </createTable>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-10">
+ <createIndex indexName="SQL100422173636831" schemaName="APP" tableName="TAG" unique="true">
+ <column name="TAG"/>
+ </createIndex>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-11">
+ <createIndex indexName="SQL100422173637010" schemaName="APP" tableName="TAG_ITEM" unique="true">
+ <column name="TAGID"/>
+ <column name="ITEMID"/>
+ </createIndex>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-12">
+ <addForeignKeyConstraint baseColumnNames="ADDRESS_ADDRESSID" baseTableName="ITEM" baseTableSchemaName="APP" constraintName="SQL100422173636231" deferrable="false" initiallyDeferred="false" referencedColumnNames="ADDRESSID" referencedTableName="ADDRESS" referencedTableSchemaName="APP"/>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-13">
+ <addForeignKeyConstraint baseColumnNames="CONTACTINFO_CONTACTINFOID" baseTableName="ITEM" baseTableSchemaName="APP" constraintName="SQL100422173636233" deferrable="false" initiallyDeferred="false" referencedColumnNames="CONTACTINFOID" referencedTableName="SELLERCONTACTINFO" referencedTableSchemaName="APP"/>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-14">
+ <addForeignKeyConstraint baseColumnNames="PRODUCTID" baseTableName="ITEM" baseTableSchemaName="APP" constraintName="SQL100422173636232" deferrable="false" initiallyDeferred="false" referencedColumnNames="PRODUCTID" referencedTableName="PRODUCT" referencedTableSchemaName="APP"/>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-15">
+ <addForeignKeyConstraint baseColumnNames="CATEGORYID" baseTableName="PRODUCT" baseTableSchemaName="APP" constraintName="SQL100422173635741" deferrable="false" initiallyDeferred="false" referencedColumnNames="CATEGORYID" referencedTableName="CATEGORY" referencedTableSchemaName="APP"/>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-16">
+ <addForeignKeyConstraint baseColumnNames="ITEMID" baseTableName="TAG_ITEM" baseTableSchemaName="APP" constraintName="SQL100422173637011" deferrable="false" initiallyDeferred="false" referencedColumnNames="ITEMID" referencedTableName="ITEM" referencedTableSchemaName="APP"/>
+ </changeSet>
+ <changeSet author="ips (generated)" id="1272025063915-17">
+ <addForeignKeyConstraint baseColumnNames="TAGID" baseTableName="TAG_ITEM" baseTableSchemaName="APP" constraintName="SQL100422173637012" deferrable="false" initiallyDeferred="false" referencedColumnNames="TAGID" referencedTableName="TAG" referencedTableSchemaName="APP"/>
+ </changeSet>
+</databaseChangeLog>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore-ds.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore-ds.xml
new file mode 100644
index 0000000..ae5ea7c
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore-ds.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- The Derby embedded database JCA connection factory config -->
+<!-- See http://www.jboss.org/community/wiki/Multiple1PC for information about local-tx-datasource -->
+<!-- $Id: derby-ds.xml 97536 2009-12-08 14:05:07Z jesper.pedersen $ -->
+
+<datasources>
+
+ <local-tx-datasource>
+
+ <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
+ <!-- Datasources are not available outside the virtual machine -->
+ <jndi-name>jdbc/PetstoreDB</jndi-name>
+
+ <!-- for in-process persistent db, saved when jboss stops. The
+ org.jboss.jdbc.DerbyDatabase mbean is necessary for properly db shutdown -->
+ <connection-url>jdbc:derby://localhost:1527/petstore;create=true</connection-url>
+
+ <!-- The driver class -->
+ <driver-class>org.apache.derby.jdbc.ClientDriver</driver-class>
+
+ <!-- The login and password -->
+ <user-name>APP</user-name>
+ <password>APP</password>
+
+ <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
+ <min-pool-size>5</min-pool-size>
+
+ <!-- The maximum connections in a pool/sub-pool -->
+ <max-pool-size>20</max-pool-size>
+
+ <!-- The time before an unused connection is destroyed -->
+ <idle-timeout-minutes>5</idle-timeout-minutes>
+
+ <!-- Whether to check all statements are closed when the connection is returned to the pool,
+ this is a debugging feature that should be turned off in production -->
+ <track-statements/>
+
+ </local-tx-datasource>
+
+</datasources>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/META-INF/application.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/META-INF/application.xml
new file mode 100644
index 0000000..eadc0f4
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/META-INF/application.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<application xmlns="http://java.sun.com/xml/ns/j2ee " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd " version="1.4">
+
+ <display-name>Java Pet Store</display-name>
+
+ <module>
+ <web>
+ <web-uri>petstore.war</web-uri>
+ <context-root>/petstore</context-root>
+ </web>
+ </module>
+
+ <module>
+ <ejb>petstore-ejb.jar</ejb>
+ </module>
+
+</application>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/META-INF/persistence.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/META-INF/persistence.xml
new file mode 100644
index 0000000..76e0703
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/META-INF/persistence.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence "
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ">
+
+ <persistence-unit name="PetstorePu">
+ <description>Petstore Persistence Unit</description>
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ <jta-data-source>java:jdbc/PetstoreDB</jta-data-source>
+ <non-jta-data-source>java:jdbc/PetstoreDB</non-jta-data-source>
+ <properties>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.DerbyDialect"/>
+ <property name="hibernate.connection.username" value="APP"/>
+ <property name="hibernate.connection.password" value="APP"/>
+ <property name="hibernate.format_sql" value="true"/>
+ </properties>
+ </persistence-unit>
+
+</persistence>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Address.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Address.class
new file mode 100644
index 0000000..c9dc392
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Address.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Category.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Category.class
new file mode 100644
index 0000000..be2275b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Category.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Item.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Item.class
new file mode 100644
index 0000000..8842106
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Item.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Product.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Product.class
new file mode 100644
index 0000000..dda3feb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Product.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/SellerContactInfo.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/SellerContactInfo.class
new file mode 100644
index 0000000..b5dbe74
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/SellerContactInfo.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Tag.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Tag.class
new file mode 100644
index 0000000..1b5785b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Tag.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/ZipLocation.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/ZipLocation.class
new file mode 100644
index 0000000..591af10
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/ZipLocation.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/META-INF/MANIFEST.MF b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..7a679c4
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/META-INF/MANIFEST.MF
@@ -0,0 +1,4 @@
+Manifest-Version: 1.0
+Ant-Version: Apache Ant 1.7.1
+Created-By: 16.0-b13 (Sun Microsystems Inc.)
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/BlueFilter.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/BlueFilter.class
new file mode 100644
index 0000000..abac5a6
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/BlueFilter.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/CaptchaSingleton.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/CaptchaSingleton.class
new file mode 100644
index 0000000..7d7af77
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/CaptchaSingleton.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/RandomString.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/RandomString.class
new file mode 100644
index 0000000..b8bfa4d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/RandomString.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/SimpleCaptcha.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/SimpleCaptcha.class
new file mode 100644
index 0000000..8c469f4
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/SimpleCaptcha.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AddressBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AddressBean.class
new file mode 100644
index 0000000..e2b4ca5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AddressBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AutocompleteBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AutocompleteBean.class
new file mode 100644
index 0000000..223289e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AutocompleteBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/CaptchaValidateFilter.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/CaptchaValidateFilter.class
new file mode 100644
index 0000000..61f3863
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/CaptchaValidateFilter.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerAction.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerAction.class
new file mode 100644
index 0000000..7c149e3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerAction.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerServlet.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerServlet.class
new file mode 100644
index 0000000..c5fb59a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerServlet.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/EntryFilter.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/EntryFilter.class
new file mode 100644
index 0000000..65d4cdb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/EntryFilter.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/FileUploadBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/FileUploadBean.class
new file mode 100644
index 0000000..1ee72ad
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/FileUploadBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CaptchaAction.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CaptchaAction.class
new file mode 100644
index 0000000..f56c35e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CaptchaAction.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CatalogXmlAction.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CatalogXmlAction.class
new file mode 100644
index 0000000..56fc53d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CatalogXmlAction.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/DefaultControllerAction.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/DefaultControllerAction.class
new file mode 100644
index 0000000..ee55705
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/DefaultControllerAction.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/ImageAction.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/ImageAction.class
new file mode 100644
index 0000000..30e70ab
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/ImageAction.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/TagXmlAction.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/TagXmlAction.class
new file mode 100644
index 0000000..dd5b7c1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/TagXmlAction.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/mapviewer/MapBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/mapviewer/MapBean.class
new file mode 100644
index 0000000..03400b2
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/mapviewer/MapBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/CatalogFacade.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/CatalogFacade.class
new file mode 100644
index 0000000..23a204c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/CatalogFacade.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/FileUploadResponse.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/FileUploadResponse.class
new file mode 100644
index 0000000..18f8102
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/FileUploadResponse.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/PayPalBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/PayPalBean.class
new file mode 100644
index 0000000..b6e2b0d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/PayPalBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/RatingBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/RatingBean.class
new file mode 100644
index 0000000..be21196
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/RatingBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoCoder.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoCoder.class
new file mode 100644
index 0000000..185dc01
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoCoder.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoPoint.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoPoint.class
new file mode 100644
index 0000000..18b3463
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoPoint.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser$CallbackHandler.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser$CallbackHandler.class
new file mode 100644
index 0000000..0c448bf
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser$CallbackHandler.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser.class
new file mode 100644
index 0000000..4a19fad
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/IndexDocument.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/IndexDocument.class
new file mode 100644
index 0000000..a8b6521
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/IndexDocument.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/Indexer.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/Indexer.class
new file mode 100644
index 0000000..2b42389
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/Indexer.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SQLParser.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SQLParser.class
new file mode 100644
index 0000000..8ab0084
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SQLParser.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchBean.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchBean.class
new file mode 100644
index 0000000..a4cc2bf
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchBean.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchIndex.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchIndex.class
new file mode 100644
index 0000000..50007c4
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchIndex.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/UpdateIndex.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/UpdateIndex.class
new file mode 100644
index 0000000..1ef9761
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/UpdateIndex.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/ImageScaler.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/ImageScaler.class
new file mode 100644
index 0000000..5570fac
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/ImageScaler.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/LogStrings.properties b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/LogStrings.properties
new file mode 100644
index 0000000..112905d
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/LogStrings.properties
@@ -0,0 +1,10 @@
+index.exception=An exception was encountered while indexing the data. Please checked to make sure there indexes are not locked by another user.
+index.sql.statement=Select statement used for retrieving database data "{0}"
+search.string=Searching indexes for string "{0}"
+search.results=Search String returned "{0}" hits
+search.exception=An exception was encountered while performing the search. Please check to make sure the indexes exist.
+fileupload.persist.exception=Error persisting seller data
+fileupload.rollback.exception=Persisting seller data, rollback failed
+geocoder.lookup.exception=The GeoCode address lookup from Yahoo has returned and Exception
+image_does_not_exist=The image doesn't exist in the default image directory or in the upload directory "{0}"
+resource_bundle_does_not_exist=The MessageStrings.properties file does not exist!.
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/MessageStrings.properties b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/MessageStrings.properties
new file mode 100644
index 0000000..7ca2d9d
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/MessageStrings.properties
@@ -0,0 +1,10 @@
+invalid_contact_firstname=First Name is required.
+invalid_contact_lastname=Last Name is required.
+invalid_address_street1=Street is required.
+invalid_address_city=City is required.
+invalid_address_state=State is required.
+invalid_address_zip=Zip Code is required.
+invalid_item_name=Pet Name is required.
+invalid_item_description=The Description should exist and the field can't have a '<script>' and/or a '<link>' tag in it.
+invalid_item_price=Price should should exist and be a number greater or equal to 0.
+invalid_item_imageurl=The image upload file must exist and be of type '.jpg', '.gif' or '.png'.
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreConstants.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreConstants.class
new file mode 100644
index 0000000..5aa4b42
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreConstants.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreUtil.class b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreUtil.class
new file mode 100644
index 0000000..a521d71
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreUtil.class differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/faces-config.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/faces-config.xml
new file mode 100644
index 0000000..22f03df
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/faces-config.xml
@@ -0,0 +1,94 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<!-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at:
+ http://developer.sun.com/berkeley_license.html
+ $Id: faces-config.xml,v 1.13 2006/05/03 22:03:20 inder Exp $ -->
+
+<faces-config xmlns="http://java.sun.com/xml/ns/javaee "
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd "
+ version="1.2">
+ <!-- ========== Application Wide Features ================================ -->
+
+ <!-- ========== Managed Beans ============================================ -->
+ <managed-bean>
+ <managed-bean-name>SearchBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.search.SearchBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>RatingBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.model.RatingBean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ <managed-property>
+ <property-name>itemId</property-name>
+ <value>#{param.itemIdBinding}</value>
+ </managed-property>
+ </managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>PayPalBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.model.PayPalBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>FileUploadBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.controller.FileUploadBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>MapBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.mapviewer.MapBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>AutocompleteBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.controller.AutocompleteBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+ <managed-bean>
+ <managed-bean-name>AddressBean</managed-bean-name>
+ <managed-bean-class>com.sun.javaee.blueprints.petstore.controller.AddressBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+
+ <!-- ========== Navigation Rules ========================================= -->
+ <navigation-rule>
+ <from-view-id>/mapLocation.jsp</from-view-id>
+ <navigation-case>
+ <from-outcome>map</from-outcome>
+ <to-view-id>/map.jsp</to-view-id>
+ </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+ <from-view-id>/mapAll.jsp</from-view-id>
+ <navigation-case>
+ <from-outcome>map</from-outcome>
+ <to-view-id>/map.jsp</to-view-id>
+ </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+ <from-view-id>/map.jsp</from-view-id>
+ <navigation-case>
+ <to-view-id>/mapLocation.jsp</to-view-id>
+ </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+ <from-view-id>/search.jsp</from-view-id>
+ <navigation-case>
+ <from-outcome>displayResults</from-outcome>
+ <to-view-id>/search.jsp</to-view-id>
+ </navigation-case>
+ <navigation-case>
+ <from-outcome>map</from-outcome>
+ <to-view-id>/map.jsp</to-view-id>
+ </navigation-case>
+ </navigation-rule>
+
+</faces-config>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/jboss-web.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/jboss-web.xml
new file mode 100644
index 0000000..0862993
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/jboss-web.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jboss-web>
+ <resource-ref>
+ <res-ref-name>jdbc/PetstoreDB</res-ref-name>
+ <res-type>javax.sql.DataSource</res-type>
+ <jndi-name>java:jdbc/PetstoreDB</jndi-name>
+ </resource-ref>
+</jboss-web>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/bp-ui-5.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/bp-ui-5.jar
new file mode 100644
index 0000000..f6bd6d2
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/bp-ui-5.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-fileupload-1.1.1.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-fileupload-1.1.1.jar
new file mode 100644
index 0000000..fc5763d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-fileupload-1.1.1.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-io-1.2.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-io-1.2.jar
new file mode 100644
index 0000000..b2867cd
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-io-1.2.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-logging-1.1.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-logging-1.1.jar
new file mode 100644
index 0000000..2ff9bbd
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-logging-1.1.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/jdom.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/jdom.jar
new file mode 100644
index 0000000..288e64c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/jdom.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/lucene-core-2.0.0.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/lucene-core-2.0.0.jar
new file mode 100644
index 0000000..db6456f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/lucene-core-2.0.0.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-0.8.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-0.8.jar
new file mode 100644
index 0000000..27d2ad3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-0.8.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-fetcher-0.7.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-fetcher-0.7.jar
new file mode 100644
index 0000000..c2a26da
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-fetcher-0.7.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/shale-remoting.jar b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/shale-remoting.jar
new file mode 100644
index 0000000..128045d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/shale-remoting.jar differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/sun-web.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/sun-web.xml
new file mode 100644
index 0000000..a9c411b
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/sun-web.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Servlet 2.5//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd ">
+<sun-web-app error-url="">
+ <context-root>/petstore</context-root>
+ <class-loader delegate="true"/>
+ <jsp-config>
+ <property name="classdebuginfo" value="true">
+ <description>Enable debug info compilation in the generated servlet class</description>
+ </property>
+ <property name="mappedfile" value="true">
+ <description>Maintain a one-to-one correspondence between static content and the generated servlet class' java code</description>
+ </property>
+ </jsp-config>
+</sun-web-app>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/web.xml b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/web.xml
new file mode 100644
index 0000000..6c65069
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/web.xml
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at:
+ http://developer.sun.com/berkeley_license.html
+ $Id: web.xml,v 1.27 2007/04/18 19:25:09 smitha Exp $ -->
+<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd ">
+
+ <display-name>Petstore</display-name>
+ <filter>
+ <filter-name>CaptchaValidateFilter</filter-name>
+ <filter-class>com.sun.javaee.blueprints.petstore.controller.CaptchaValidateFilter</filter-class>
+ </filter>
+ <filter>
+ <filter-name>EntryFilter</filter-name>
+ <filter-class>com.sun.javaee.blueprints.petstore.controller.EntryFilter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>EntryFilter</filter-name>
+ <url-pattern>/*</url-pattern>
+ </filter-mapping>
+ <filter-mapping>
+ <filter-name>CaptchaValidateFilter</filter-name>
+ <url-pattern>/faces/dynamic/bpui_fileupload_handler/handleFileUpload</url-pattern>
+ </filter-mapping>
+ <listener>
+ <listener-class>com.sun.javaee.blueprints.petstore.model.CatalogFacade</listener-class>
+ </listener>
+
+ <servlet>
+ <display-name>ControllerServlet</display-name>
+ <servlet-name>ControllerServlet</servlet-name>
+ <servlet-class>com.sun.javaee.blueprints.petstore.controller.ControllerServlet</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>ControllerServlet</servlet-name>
+ <url-pattern>/catalog</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>ControllerServlet</servlet-name>
+ <url-pattern>/controller</url-pattern>
+ </servlet-mapping>
+
+ <context-param>
+ <description>
+ Google Maps authorization key for "http://localhost:8080/ "
+ To use a another URL a new map key will have to be generated from http://www.google.com/apis/maps/
+ </description>
+ <param-name>com.sun.j2ee.blueprints.ui.mapviewer.KEY</param-name>
+ <param-value>ABQIAAAAyQYKk4__l80DyIsqLPvvuxTwM0brOpm-All5BF6PoaKBxRWWERSt2NPUufvDhWGdrb-pCzTZQ2vi2A</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>server</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>com.sun.faces.validateXml</param-name>
+ <param-value>false</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>com.sun.faces.verifyObjects</param-name>
+ <param-value>false</param-value>
+ </context-param>
+
+ <context-param>
+ <param-name>javax.faces.CONFIG_FILES</param-name>
+ <param-value>/WEB-INF/faces-config.xml</param-value>
+ </context-param>
+
+ <!-- proxy for mapviewer -->
+ <context-param>
+ <param-name>proxyHost</param-name>
+ <param-value></param-value>
+ </context-param>
+ <context-param>
+ <param-name>proxyPort</param-name>
+ <param-value></param-value>
+ </context-param>
+ <!-- filter init-param not working so use servlet context -->
+ <context-param>
+ <param-name>entryPages</param-name>
+ <param-value>.jpg|.gif|index.html|index.jsp|fileupload.jsp|search.jsp|catalog.jsp|mapAll.jsp|tag.jsp|news.jsp</param-value>
+ </context-param>
+
+
+ <!-- Faces Servlet -->
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+
+ <!-- Faces Servlet Mapping -->
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>/faces/*</url-pattern>
+ </servlet-mapping>
+
+ <!-- need datasource for indexing Lucene search engine -->
+ <servlet-mapping>
+ <servlet-name>ControllerServlet</servlet-name>
+ <url-pattern>/faces/CaptchaServlet</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>ControllerServlet</servlet-name>
+ <url-pattern>/ImageServlet/*</url-pattern>
+ </servlet-mapping>
+ <servlet-mapping>
+ <servlet-name>ControllerServlet</servlet-name>
+ <url-pattern>/TagServlet/*</url-pattern>
+ </servlet-mapping>
+ <error-page>
+ <exception-type>java.lang.RuntimeException</exception-type>
+ <location>/systemerror.jsp</location>
+ </error-page>
+ <resource-ref>
+ <res-ref-name>jdbc/PetstoreDB</res-ref-name>
+ <res-type>javax.sql.DataSource</res-type>
+ <res-auth>Container</res-auth>
+ <res-sharing-scope>Shareable</res-sharing-scope>
+ </resource-ref>
+</web-app>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.css b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.css
new file mode 100644
index 0000000..14c6ed0
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.css
@@ -0,0 +1 @@
+.accordion {
width:150px;
height:400px;
border-width:1px;
border-style:solid;
border-color:black;
background:#404040;
}
.accordionBody {
width:160px;
height:400px;
border-width:1px;
border-style:solid;
border-color:black;
background:#404040;
}
.accordionTitle {
vertical-align: top;
padding-top: 10px;
text-align: center;
width:150px;
height:90px;
color:white;
font-size:22px;
font-weight: bold;
background:black;
opacity: .99;
}
.accordionRow {
color:white;
cursor: pointer;
font-size:18px;
font-weight: bold;
vertical-align: middle;
padding-top: 5px;
text-align: center;
width:150px;
height:40px;
background:#104E8B;
opacity: .99;
}
.accordionProduct {
text-align: center;
width:150px;
color:white;
font-size:12px;
font-weight: bold;
background:#104E8B;
opacity: .99;
}
.accordionLink {
cursor: pointer;
text-decoration: none;
color:white;
}
.accordionLinkSelected {
text-align: center;
width:150px;
color:red;
font-size:12px;
font-weight: bold;
background:black;
opacity: .99;
}
.accordionLinkHover {
text-decoration: underline;
color:white;
}
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.js
new file mode 100644
index 0000000..1c1ee6b
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.js
@@ -0,0 +1,249 @@
+/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: accordion.js,v 1.22 2006/05/03 22:00:32 inder Exp $ */
+
+function AccordionMenu () {
+
+ dojo.event.topic.subscribe("/accordion", this, this.handleEvent);
+
+ var displayPortWidth = 100;
+ var HEIGHT = 400;
+
+ var EXPANDED_HEIGHT = 125;
+ var ITEM_HEIGHT = 55;
+ var INCREMENT = 10;
+
+ var timeout = 5; // in ms
+
+ var accordion = document.getElementById("accordionBody");
+ var divs = [];
+ var oExpandedIndex = -1;
+ var nExpandedIndex = -1;
+ var oHeight = ITEM_HEIGHT;
+ var nHeight = ITEM_HEIGHT;
+ var tHeight = 165;
+ var expanding = false;
+ var categories;
+
+ // while control the inline debug statements
+ var debug = false;
+ var status = document.getElementById("status");
+
+ function Row(id, div, defaultHeight) {
+ this.id = id;
+ this.div = div;
+ //this.height = height;
+ this.h = defaultHeight;
+ this.div.style.height = defaultHeight + "px"
+ }
+
+ Row.prototype.setHeight = function(nH) {
+ this.h = nH;
+ this.div.style.height = nH + "px";
+ // re-adjust for ie in that it does not follow the boxmodel
+ if (this.div.offsetHeight > nH) {
+ this.div.style.height = (nH - (this.div.offsetHeight - nH)) + 'px';
+ }
+ }
+
+ Row.prototype.getTotalHeight = function() {
+ return this.div.offsetHeight;
+ }
+
+ Row.prototype.getHeight = function() {
+ return this.h;
+ }
+
+ this.handleEvent = function(args) {
+ if (args.type) {
+ if (args.type == 'expand') {
+ var targetRow = args.targetRow;
+ initiateExpansion(targetRow);
+ }
+ }
+ }
+
+ this.load = function(lcategories) {
+ categories = lcategories;
+ // create all the rows
+ for (var l=0; l < categories.length; l++) {
+ var row = createRow(l,"accordionRow", ITEM_HEIGHT);
+ createLinks(row.div, categories[l].name, l, "accordionLink");
+ divs.push(row);
+ }
+ }
+
+ function showStatus() {
+ if (debug) {
+ var stat = "oExpandedIndex=" + oExpandedIndex + " " ;
+ for (var i=0; i < divs.length; i++) {
+ stat = stat + i + "=" + divs[i].getTotalHeight() + " ";
+ }
+ status.innerHTML = stat + " total height=" + accordion.offsetHeight;
+ var totalH = 0;
+ var tH = 0;
+ for (var i=0; i < divs.length; i++) {
+ totalH = totalH + divs[i].getHeight();
+ tH = tH + divs[i].getTotalHeight();
+ }
+ }
+ }
+
+ this.showCategory = function(catid) {
+ for (var l=0; l < categories.length; l++) {
+ if (catid == categories[l].name) {
+ // now tell the scroller to load the first product
+ initiateExpansion(l);
+ if (categories[l].products[0]) {
+ dojo.event.topic.publish("/catalog", {type:"showProducts", productId:categories[l].products[0].id});
+ }
+ break;
+ }
+ }
+ }
+
+ this.showFirstCategory = function() {
+ initiateExpansion(0);
+ if (categories[0].products[0]) {
+ dojo.event.topic.publish("/catalog", {type:"showProducts", productId:categories[0].products[0].id});
+ }
+ }
+
+ this.loadCategoryItem = function(pid, itemId) {
+ // find the right product and expand the accordion
+ for (var l=0; l < categories.length; l++) {
+ // now tell the scroller to load the first product
+ for (var il=0; il < categories[l].products.length; il++) {
+ if (categories[l].products[il].id == pid ) {
+ initiateExpansion(l);
+ break;
+ }
+ }
+ }
+ dojo.event.topic.publish("/catalog", {type:"showItemDetails", productId: pid , itemId: itemId});
+ }
+
+ function initiateExpansion(id) {
+ // jump out if we are in progress
+ if (!expanding && oExpandedIndex != Number(id)) {
+ expanding = true;
+ nExpandedIndex = Number(id);
+ if (oExpandedIndex != -1) {
+ var targetDiv = divs[oExpandedIndex].div;
+ if (targetDiv && targetDiv.childNodes) {
+ for (var l = targetDiv.childNodes.length -1; l >= 0 ; l--) {
+ targetDiv.removeChild(targetDiv.childNodes[l]);
+ }
+ }
+ createLinks(divs[oExpandedIndex].div, categories[oExpandedIndex].name, oExpandedIndex, "accordionLink");
+ }
+ expandRow(id);
+ }
+ }
+
+ function expandRow() {
+ if (expanding) {
+ showStatus();
+ //
+ if (nHeight < EXPANDED_HEIGHT) {
+ nHeight = nHeight + INCREMENT;
+ divs[nExpandedIndex].setHeight(nHeight);
+ if (oExpandedIndex != -1) {
+ if (tHeight >= ITEM_HEIGHT) {
+ oHeight = oHeight - INCREMENT;
+ // take all out of the old expanded
+ } else {
+ oHeight = oHeight - INCREMENT;
+ }
+ divs[oExpandedIndex].setHeight(oHeight);
+ }
+ // default exapnd here
+ } else if (oExpandedIndex != -1 && oHeight > ITEM_HEIGHT) {
+ oHeight = oHeight - INCREMENT;
+ divs[oExpandedIndex].setHeight(oHeight);
+ } else {
+ // set the contents of the new menu
+ var targetDiv = divs[nExpandedIndex].div;
+ if (targetDiv && targetDiv.childNodes) {
+ for (var l = targetDiv.childNodes.length -1; l >= 0 ; l--) {
+ targetDiv.removeChild(targetDiv.childNodes[l]);
+ }
+ }
+ divs[nExpandedIndex].div.appendChild(document.createTextNode(categories[nExpandedIndex].name));
+ divs[nExpandedIndex].div.appendChild(document.createElement("p"));
+ for (var l= 0; l < categories[nExpandedIndex].products.length; l++) {
+ var span = document.createElement("span");
+ span.className = "accordionProduct";
+ var link = document.createElement("a");
+ var target = categories[nExpandedIndex].products[l].id;
+ link.id = target;
+ link.className = "accordionLink";
+ // some browsers aren't setting the styles for hovers so forcing them
+ link.setAttribute("onmouseover", "this.className='accordionLinkHover';");
+ link.setAttribute("onmouseout", "this.className='accordionLink';");
+ dojo.event.connect(link, "onclick", function(evt) {
+ this._target = target
+ var src;
+ if (evt.target) {
+ src = evt.target;
+ } else if (evt.srcElement) {
+ src = evt.srcElement;
+ }
+ //src.parentNode.className = "accordionLinkSelected";
+ // set this so the next time around it can be removed;
+ dojo.event.topic.publish("/catalog", {type:"showProducts", productId:src.id});
+ });
+ link.appendChild(document.createTextNode(categories[nExpandedIndex].products[l].name));
+ span.appendChild(link);
+ divs[nExpandedIndex].div.appendChild(span);
+ if (l < categories[nExpandedIndex].products.length - 1) {
+ divs[nExpandedIndex].div.appendChild(document.createElement("p"));
+ }
+ link = null;
+ }
+ expanding = false;
+ oExpandedIndex = nExpandedIndex;
+ nExpandedIndex = -1;
+ oHeight = nHeight;
+ nHeight = ITEM_HEIGHT;
+ return;
+ }
+
+ setTimeout(expandRow, timeout);
+ }
+ }
+
+ function createLinks(tDiv, text, id, linkStyle) {
+ var link = document.createElement("a");
+ link.className = linkStyle;
+ link.appendChild(document.createTextNode(text));
+ link.setAttribute("id", id);
+ if (link.attachEvent) {
+ link.attachEvent('onmouseover',function(e){initiateExpansion(e.srcElement.getAttribute("id"));});
+ } else if (link.addEventListener) {
+ link.addEventListener('mouseover',function(e){initiateExpansion(e.currentTarget.getAttribute("id"));}, true);
+ }
+ tDiv.appendChild(link);
+ }
+
+ function createRow(id, rowStyle, height) {
+ var nDiv = document.createElement("div");
+ nDiv.className = rowStyle;
+ var row;
+ var cell;
+ if (accordion.insertRow) {
+ row = accordion.insertRow(accordion.rows.length);
+
+ } else {
+ row = document.createElement("tr");
+ accordion.appendChild(row);
+ }
+ if (row.inserCell) {
+ cell = row.insertCell(0);
+ } else {
+ cell = document.createElement("td");
+ row.appendChild(cell);
+ }
+ cell.appendChild(nDiv);
+ return new Row(id, nDiv, height);
+ }
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/banner.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/banner.jsp
new file mode 100644
index 0000000..c43dd98
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/banner.jsp
@@ -0,0 +1,80 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: banner.jsp,v 1.28 2006/12/19 20:23:53 yutayoshida Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+
+<%@taglib prefix="f" uri="http://java.sun.com/jsf/core "%>
+<%@taglib prefix="h" uri="http://java.sun.com/jsf/html "%>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/styles.css"></link>
+<script type="text/javascript" src="${pageContext.request.contextPath}/faces/static/META-INF/dojo/bpcatalog/dojo.js"></script>
+<script type="text/javascript" src="${pageContext.request.contextPath}/faces/static/META-INF/rss/rssbar.js"></script>
+<link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/faces/static/META-INF/rss/rssbar.css" />
+<style type="text/css">
+
+#rss-bar {
+ margin: 0 auto 0px;
+}
+
+#rss-bar table td#rss-channel {
+ background-repeat: no-repeat;
+ background-position: top left;
+ font-size: 14px;
+ font-weight: bold;
+ vertical-align: top;
+ text-align: center;
+ width: 254px;
+}
+
+#rss-bar table td#rss-item {
+ background-repeat: no-repeat;
+ font-size: 14px;
+ width: 534px;
+ text-align: left;
+}
+
+#rss-bar table a {
+ color: white;
+ text-decoration: none;
+}
+#rss-bar table a:hover { color: #ffff00;}
+
+</style>
+<script type="text/javascript">
+ var rss = new bpui.RSS();
+ dojo.addOnLoad(function(){rss.getRssInJson('${pageContext.request.contextPath}/faces/dynamic/bpui_rssfeedhandler/getRssfeed', 'https://blueprints.dev.java.net/servlets/ProjectRSS?type=news ', '4', '4000', 'News from BluePrints', 'news.jsp');});
+</script>
+
+<table border="0" bordercolor="gray" cellpadding="0" cellspacing="0" bgcolor="white" width="100%">
+ <tr id="injectionPoint">
+ <td width="100"><a class="menuLink" href="${pageContext.request.contextPath}/faces/index.jsp""><img src="${pageContext.request.contextPath}/images/banner_logo.gif" border="0" width="70" height="70"></a></td>
+ <td align="left">
+ <div class="banner">Java Pet Store</div>
+ </td>
+ <td id="bannerRight" align="right">
+ <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/fileupload.jsp">Seller</a> <span class="menuItem">|</span>
+ <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/search.jsp">Search</a> <span class="menuItem">|</span>
+ <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/catalog.jsp">Catalog</a> <span class="menuItem">|</span>
+ <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/mapAll.jsp">Map</a> <span class="menuItem">|</span>
+ <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/tag.jsp">Tags</a> <span class="menuItem">|</span>
+ <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/index.jsp">Home</a>
+ </td>
+ </tr>
+ </tr>
+ <tr bgcolor="gray">
+ <td id="menubar" align="left" colspan="3" height="25" >
+ <div id="rss-bar">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td id="rss-channel" nowrap="true"></td>
+ <td id="rss-item" nowrap="true"></td>
+ </tr>
+ </table>
+ </div>
+ </td>
+ </tr>
+ </table>
+
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.css b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.css
new file mode 100644
index 0000000..5c906b5
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.css
@@ -0,0 +1,48 @@
+.bpui_petstorelist_dataDiv {
+ border-style: groove;
+ overflow: auto;
+ width: 600px;
+ height: 500px;
+ padding: 10px;
+}
+
+.bpui_petstorelist_pageDiv {
+}
+
+
+.bpui_petstorelist_table {
+}
+
+.bpui_petstorelist_cell {
+ padding: 5px;
+ vertical-align: top;
+}
+
+.bpui_petstorelist_row {
+ border-bottom: dotted;
+}
+
+.bpui_petstorelist_hr {
+ width: 90%;
+}
+
+.bpui_petstorelist_image {
+}
+
+.bpui_petstorelist_link{
+}
+
+.bpui_petstorelist_name{
+}
+
+.bpui_petstorelist_description{
+}
+
+.bpui_petstorelist_price {
+}
+
+.bpui_petstorelist_previous {
+}
+
+.bpui_petstorelist_next {
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.js
new file mode 100644
index 0000000..4df46fb
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.js
@@ -0,0 +1,269 @@
+var bpui;
+if(typeof bpui == "undefined") {
+ bpui=new Object();
+}
+bpui.petstoreList=new Object();
+
+bpui.petstoreList.divName="";
+bpui.petstoreList.currentCount=0;
+bpui.petstoreList.numberPerPage=5;
+bpui.petstoreList.category="feline01";
+bpui.petstoreList.cachedData=new Object();
+bpui.petstoreList.debug=false;
+bpui.petstoreList.timer;
+
+bpui.petstoreList.initialSetup=function() {
+ // get outerdiv
+ var targetDiv=document.getElementById(bpui.petstoreList.divName);
+
+ // containier div
+ tablex="<table><tr><td align=\"center\">";
+ tablex += "<b>Java BluePrint's Pet Store Category:</b> <select size=\"1\" id=\"bpui.petstoreList.categoryList\" onchange=\"bpui.petstoreList.selectCategory()\">";
+ tablex += "<option value=\"loading\">Loading Data...</option>";
+ tablex += "</select>";
+ tablex += "</td></tr><tr><td><div id=\"bpui.petstoreList.dataDiv\" class=\"bpui_petstorelist_dataDiv\">";
+ tablex += "</div>";
+
+ // add product previous and next
+ tablex += "</td></tr>";
+ tablex += "<tr><td colspan=\"3\" style=\"text-align:center;\">";
+ tablex += "<div id=\"bpui.petstoreList.pageDiv\" class=\"bpui_petstorelist_pageDiv\">";
+ tablex += "</div>";
+ tablex += "</td></tr>";
+ // add in debug div, if debugging
+ if(bpui.petstoreList.debug) {
+ tablex += "<tr><td colspan=\"3\">";
+ tablex += "<div id=\"bpui.petstoreList.debugDiv\">";
+ tablex += "</div>";
+ tablex += "</td></tr>";
+ }
+ tablex += "</table>";
+ targetDiv.innerHTML=tablex;
+ bpui.petstoreList.setSelectedCategory();
+}
+
+
+bpui.petstoreList.populateData=function(datax) {
+ // clear response timer
+ clearTimeout(bpui.petstoreList.timer);
+
+ if(typeof datax != "undefined") {
+ // check to see if at last page and no data is returned
+ if(datax.length < 1) {
+ alert("At last page for category!");
+ // keep currentCount correct by removing the increment that was added
+ bpui.petstoreList.currentCount -= bpui.petstoreList.numberPerPage;
+ } else {
+ // add data to cache if it doesn't already exist
+ // if a full set isn't returned don't cache it, so the data will be retrieved again from the server.
+ // This is optional, you have to weigh the performance hit with the consiquences of not doing an update
+ key=bpui.petstoreList.category + "|" + bpui.petstoreList.currentCount;
+ cachedSet=bpui.petstoreList.cachedData[key];
+ if(typeof cachedSet == "undefined" && datax.length >= bpui.petstoreList.numberPerPage) {
+ // need to cache data
+ if(bpui.petstoreList.debug) bpui.petstoreList.debugMessage("Adding cache data by key: " + key);
+ bpui.petstoreList.cachedData[key]=datax;
+ }
+
+ // get outerdiv
+ var targetDiv=document.getElementById("bpui.petstoreList.dataDiv");
+
+ // containier div
+ tablex="<table class=\"bpui_petstorelist_table\">";
+ tablex += "<tr class=\"bpui_petstorelist_row\">";
+ tablex += "<th class=\"bpui_petstorelist_cell\">Pet Image</td>";
+ tablex += "<th class=\"bpui_petstorelist_cell\">Name & Description</td>";
+ tablex += "<th class=\"bpui_petstorelist_cell\">Price ($)</td>";
+ tablex += "</tr>";
+
+ // loop through product results
+ for(ii=0; ii < datax.length; ii++) {
+ // add row
+ tablex += "<tr class=\"bpui_petstorelist_row\"><td class=\"bpui_petstorelist_cell\">";
+ tablex += "<a class=\"bpui_petstorelist_image\" target=\"_blank\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
+ datax[ii].productID + "," + datax[ii].itemID + "\">";
+
+ tablex += "<img src=\"http://localhost:8080/petstore/ImageServlet/ " + datax[ii].imageThumbURL + "\"/>";
+
+ tablex += "</a>";
+ tablex += "</td><td class=\"bpui_petstorelist_cell\">";
+ tablex += "<a class=\"bpui_petstorelist_link\" target=\"_blank\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
+ datax[ii].productID + "," + datax[ii].itemID + "\">";
+ tablex += "<span class=\"bpui_petstorelist_name\">" + datax[ii].name + "</span><br/>";
+ tablex += "</a>";
+ tablex += "<span class=\"bpui_petstorelist_description\">" + datax[ii].description + "</span>";
+ tablex += "</td><td class=\"bpui_petstorelist_cell\">";
+
+ // add product price
+ tablex += "<span class=\"bpui_petstorelist_price\">\$" + datax[ii].price + "</span><br/>";
+ tablex += "</td></tr>";
+ tablex += "<tr><td colspan=\"3\"><hr class=\"bpui_petstorelist_hr\" /></td></tr>";
+ }
+
+ tablex += "</table>";
+ targetDiv.innerHTML=tablex;
+ }
+
+ // setup previous next buttons
+ pagex="";
+ var targetDiv=document.getElementById("bpui.petstoreList.pageDiv");
+ if(bpui.petstoreList.currentCount >= bpui.petstoreList.numberPerPage) {
+ // add previous
+ pagex += "<span class=\"bpui_petstorelist_previous\" onclick=\"bpui.petstoreList.previousProducts();\"><< PREVIOUS</span> ";
+ }
+ if(datax.length == bpui.petstoreList.numberPerPage) {
+ // add next only if full page has been returned. Need to change when add cache ???
+ pagex += "<span class=\"bpui_petstorelist_next\" onclick=\"bpui.petstoreList.nextProducts();\">NEXT >></span><br/>";
+ }
+ targetDiv.innerHTML=pagex;
+ }
+}
+
+bpui.petstoreList.setSelectedCategory=function() {
+ catx=document.getElementById("bpui.petstoreList.categoryList");
+ for(ii=0; ii < catx.length; ii++) {
+ if(catx.options[ii].value == bpui.petstoreList.category) {
+ catx.options[ii].selected=true;
+ }
+ }
+}
+
+bpui.petstoreList.selectCategory=function() {
+ catx=document.getElementById("bpui.petstoreList.categoryList");
+ bpui.petstoreList.category=catx.value;
+
+ bpui.petstoreList.currentCount=0;
+ bpui.petstoreList.updateProducts();
+}
+
+
+bpui.petstoreList.nextProducts=function() {
+ // load data from service
+ bpui.petstoreList.currentCount += bpui.petstoreList.numberPerPage;
+ bpui.petstoreList.updateProducts();
+}
+
+bpui.petstoreList.previousProducts=function() {
+ bpui.petstoreList.currentCount -= bpui.petstoreList.numberPerPage;
+ if(bpui.petstoreList.currentCount < 0) {
+ bpui.petstoreList.currentCount=0;
+ }
+ bpui.petstoreList.updateProducts();
+}
+
+
+bpui.petstoreList.updateProducts=function() {
+ // check to see if in cache
+ key=bpui.petstoreList.category + "|" + bpui.petstoreList.currentCount;
+ cachedSet=bpui.petstoreList.cachedData[key];
+ // see if data in cache
+ if(typeof cachedSet != "undefined") {
+ // get data from cache
+ if(bpui.petstoreList.debug) bpui.petstoreList.debugMessage("Pulling data from cache using: " + key + " with " + cachedSet.length + " items.");
+ bpui.petstoreList.populateData(cachedSet);
+ } else {
+ // load data from service
+ if(bpui.petstoreList.debug) bpui.petstoreList.debugMessage("Retrieving data from service for : " + bpui.petstoreList.category + " starting at item " + bpui.petstoreList.currentCount);
+
+ // set degradation timeout
+ bpui.petstoreList.timer=setTimeout('bpui.petstoreList.requestTimedOut()', 20000);
+
+ // create dynamic script
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=" + bpui.petstoreList.currentCount + "&length=" + bpui.petstoreList.numberPerPage + "&format=jsonp&callback=bpui.petstoreList.populateData");
+ bodyTag.appendChild(scriptx);
+ }
+}
+
+
+bpui.petstoreList.createPetstoreList=function(divName, numberPerPage) {
+ // keep divName for later references
+ bpui.petstoreList.divName=divName;
+
+ // see if numberPerPage defined
+ if(typeof numberPerPage != "undefined") {
+ bpui.petstoreList.numberPerPage=numberPerPage;
+ }
+
+ // setup static elements
+ bpui.petstoreList.initialSetup();
+
+ // set timer to make sure service look up returns. Eventhough the Javascript library was able to be fetched, the database could be down or the
+ // service could be responding very slowly and the request timeout. Wait for 30 seconds and then set data div to service may not be responding message.
+ // Since both calls hit the database, if one returns propertly the other should also.
+ bpui.petstoreList.timer=setTimeout('bpui.petstoreList.requestTimedOut()', 20000);
+
+ // load categories from service
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=categories&format=jsonp&ca... ");
+ bodyTag.appendChild(scriptx);
+
+ // load pet data from service
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=0&length=" + bpui.petstoreList.numberPerPage + "&format=jsonp&callback=bpui.petstoreList.populateData");
+ bodyTag.appendChild(scriptx);
+}
+
+
+bpui.petstoreList.requestTimedOut=function() {
+ document.getElementById("bpui.petstoreList.dataDiv").innerHTML="<b><font color=\"#0000FF\">The Java BluePrint's Pet Store JSONP Service is either responding very slowly or not responding at all! Please check with the service provider for more information.</font></b>";
+}
+
+
+
+bpui.petstoreList.debugMessage=function(messx) {
+ targetDiv=document.getElementById("bpui.petstoreList.debugDiv");
+ targetDiv.innerHTML=messx + "<br/>" + targetDiv.innerHTML;
+}
+
+
+bpui.petstoreList.populateCategory=function(datax) {
+ // clear response timer
+ clearTimeout(bpui.petstoreList.timer);
+
+ if(typeof datax != "undefined") {
+ catx=document.getElementById("bpui.petstoreList.categoryList");
+ countx=0;
+ // loop through top level categories
+ for(ii=0; ii < datax.length; ii++) {
+ // loop through individual categories
+ for(yy=0; yy < datax[ii].products.length; yy++) {
+ // set default value for select list
+ bCurrentSelect=false
+ if(datax[ii].products[yy].id == bpui.petstoreList.category) {
+ bCurrentSelect=true;
+ }
+ catx.options[countx]=new Option(datax[ii].products[yy].name, datax[ii].products[yy].id, false, bCurrentSelect);
+ countx++;
+ }
+ }
+ }
+}
+
+
+bpui.petstoreList.hackerExample=function() {
+ /*
+ bodyTag=document.getElementsByTagName("body")[0];
+ iframex=document.createElement("iframe");
+ iframex.setAttribute("src", "http://localhost:8080/bp-clientside-mashup/show.jsp?cookies= " + escape(document.cookie));
+ bodyTag.appendChild(iframex);
+ */
+ // load pet data from service
+
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/bp-clientside-mashup/show.jsp?cookies= " + escape(document.cookie));
+ bodyTag.appendChild(scriptx);
+
+
+}
+
+
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_dom.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_dom.js
new file mode 100644
index 0000000..d00e427
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_dom.js
@@ -0,0 +1,136 @@
+var bpui;
+if(typeof bpui == "undefined") {
+ bpui=new Object();
+}
+bpui.petstoreList=new Object();
+
+bpui.petstoreList.divName="";
+bpui.petstoreList.currentCount=0;
+
+bpui.petstoreList.populateData=function(datax) {
+ if(typeof datax != "undefined") {
+
+ // get outerdiv
+ var targetDiv=document.getElementById(bpui.petstoreList.divName);
+
+ // make sure div is clear
+ targetDiv.innerHTML="";
+
+ // add class to containing div
+ targetDiv.setAttribute("class", "bpui_petstorelist_div")
+
+ // add table
+ tablex=document.createElement("table");
+ tablex.setAttribute("class", "bpui_petstorelist_table")
+ targetDiv.appendChild(tablex);
+
+ // loop through product results
+ for(ii=0; ii < datax.length; ii++) {
+ // add row
+ rowx=document.createElement("tr");
+
+ // add product image with hyperlink
+ colx=document.createElement("td");
+ ax=document.createElement("a");
+ ax.setAttribute("href", "http://localhost:8080/petstore/faces/catalog.jsp# " + datax[ii].productID + "," + datax[ii].itemID)
+ ax.setAttribute("target", "bppetstore")
+ ax.setAttribute("class", "bpui_petstorelist_image")
+ imgx=document.createElement("img");
+ imgx.setAttribute("src", "http://localhost:8080/petstore/ImageServlet/ " + datax[ii].imageThumbURL);
+ ax.appendChild(imgx);
+ colx.appendChild(ax);
+ rowx.appendChild(colx);
+
+ // add product name with hyperlink
+ colx=document.createElement("td");
+ ax=document.createElement("a");
+ ax.setAttribute("href", "http://localhost:8080/petstore/faces/catalog.jsp# " + datax[ii].productID + "," + datax[ii].itemID)
+ ax.setAttribute("target", "bppetstore")
+ ax.setAttribute("class", "bpui_petstorelist_name_link")
+ spanx=document.createElement("span");
+ spanx.setAttribute("class", "bpui_petstorelist_name")
+ spanx.appendChild(document.createTextNode(datax[ii].name));
+ ax.appendChild(spanx);
+ colx.appendChild(ax);
+ colx.appendChild(document.createElement("br"));
+ // add product description
+ spanx=document.createElement("span");
+ spanx.setAttribute("class", "bpui_petstorelist_description");
+ spanx.appendChild(document.createTextNode(datax[ii].description));
+ colx.appendChild(spanx);
+ rowx.appendChild(colx);
+
+ // add product price
+ colx=document.createElement("td");
+ spanx=document.createElement("span");
+ spanx.setAttribute("class", "bpui_petstorelist_price");
+ spanx.appendChild(document.createTextNode("\$" + datax[ii].price));
+ colx.appendChild(spanx);
+ rowx.appendChild(colx);
+
+ // add row to table
+ tablex.appendChild(rowx);
+ }
+
+ // add product previous and next
+ rowx=document.createElement("tr");
+ colx=document.createElement("td");
+ colx.setAttribute("colspan", "3");
+ spanx=document.createElement("span");
+ spanx.setAttribute("class", "bpui_petstorelist_previous");
+ spanx.setAttribute("onclick", "bpui.petstoreList.previousProducts();");
+ spanx.appendChild(document.createTextNode("<< PREVIOUS"));
+ colx.appendChild(spanx);
+
+ spanx=document.createElement("span");
+ spanx.setAttribute("class", "bpui_petstorelist_next");
+ spanx.setAttribute("onclick", "bpui.petstoreList.nextProducts();");
+ spanx.appendChild(document.createTextNode("NEXT >>"));
+ colx.appendChild(spanx);
+ rowx.appendChild(colx);
+
+ // add row to table
+ tablex.appendChild(rowx);
+ }
+}
+
+
+bpui.petstoreList.nextProducts=function() {
+ // load data from service
+ bpui.petstoreList.currentCount += 5;
+ bpui.petstoreList.updateProducts();
+}
+
+
+bpui.petstoreList.previousProducts=function() {
+ bpui.petstoreList.currentCount -= 5;
+ if(bpui.petstoreList.currentCount < 0) {
+ bpui.petstoreList.currentCount=0;
+ }
+ bpui.petstoreList.updateProducts();
+}
+
+
+bpui.petstoreList.updateProducts=function() {
+ // load data from service
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid=feline01&start= " + bpui.petstoreList.currentCount + "&length=5&format=jsonp");
+ bodyTag.appendChild(scriptx);
+}
+
+
+
+bpui.petstoreList.createPetstoreList=function(divName) {
+ // keep divName for later references
+ bpui.petstoreList.divName=divName;
+
+ // load data from service
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid=feline01&start=0... ");
+ bodyTag.appendChild(scriptx);
+}
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_one_div.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_one_div.js
new file mode 100644
index 0000000..9b18cb4
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_one_div.js
@@ -0,0 +1,159 @@
+var bpui;
+if(typeof bpui == "undefined") {
+ bpui=new Object();
+}
+bpui.petstoreList=new Object();
+
+bpui.petstoreList.divName="";
+bpui.petstoreList.currentCount=0;
+bpui.petstoreList.category="feline01";
+
+
+bpui.petstoreList.initialSetup=function() {
+ // get outerdiv
+ var targetDiv=document.getElementById(bpui.petstoreList.divName);
+
+ // containier div
+ tablex="<table><tr><td align=\"center\">";
+ tablex += "<b>Java BluePrint's Pet Store Category:</b> <select size=\"1\" id=\"bpui.petstoreList.categoryList\" onchange=\"bpui.petstoreList.selectCategory()\">";
+ tablex += "<option value=\"feline01\">Hairy Cat</option>";
+ tablex += "<option value=\"feline02\">Groomed Cat</option>";
+ tablex += "<option value=\"canine01\">Medium Dogs</option>";
+ tablex += "<option value=\"canine02\">Small Dogs</option>";
+ tablex += "<option value=\"avian01\">Parrot</option>";
+ tablex += "<option value=\"avian02\">Exotic</option>";
+ tablex += "<option value=\"fish01\">Small Fish</option>";
+ tablex += "<option value=\"fish02\">Large Fish</option>";
+ tablex += "<option value=\"reptile01\">Slithering Reptiles</option>";
+ tablex += "<option value=\"reptile02\">Crawling Reptiles</option>";
+ tablex += "</select>";
+ tablex += "</td></tr><tr><td><div class=\"bpui_petstorelist_div\">";
+ tablex += "</div>";
+
+ // add product previous and next
+ tablex += "</td></tr>";
+ tablex += "<tr><td colspan=\"3\" style=\"text-align:center;\">";
+ tablex += "<span class=\"bpui_petstorelist_previous\" onclick=\"bpui.petstoreList.previousProducts();\"><< PREVIOUS</span> ";
+ tablex += "<span class=\"bpui_petstorelist_next\" onclick=\"bpui.petstoreList.nextProducts();\">NEXT >></span><br/>";
+ tablex += "</td></tr>";
+ tablex += "</table>";
+ targetDiv.innerHTML=tablex;
+ bpui.petstoreList.setSelectedCategory();
+}
+
+bpui.petstoreList.populateData=function(datax) {
+ if(typeof datax != "undefined") {
+
+ // get outerdiv
+ var targetDiv=document.getElementById(bpui.petstoreList.divName);
+
+ // containier div
+ tablex="<table><tr><td align=\"center\">";
+ tablex += "<b>Java BluePrint's Pet Store Category:</b> <select size=\"1\" id=\"bpui.petstoreList.categoryList\" onchange=\"bpui.petstoreList.selectCategory()\">";
+ tablex += "<option value=\"feline01\">Hairy Cat</option>";
+ tablex += "<option value=\"feline02\">Groomed Cat</option>";
+ tablex += "<option value=\"canine01\">Medium Dogs</option>";
+ tablex += "<option value=\"canine02\">Small Dogs</option>";
+ tablex += "<option value=\"avian01\">Parrot</option>";
+ tablex += "<option value=\"avian02\">Exotic</option>";
+ tablex += "<option value=\"fish01\">Small Fish</option>";
+ tablex += "<option value=\"fish02\">Large Fish</option>";
+ tablex += "<option value=\"reptile01\">Slithering Reptiles</option>";
+ tablex += "<option value=\"reptile02\">Crawling Reptiles</option>";
+ tablex += "</select>";
+ tablex += "</td></tr><tr><td><div class=\"bpui_petstorelist_div\">";
+
+ tablex += "<table class=\"bpui_petstorelist_table\">";
+
+ // loop through product results
+ for(ii=0; ii < datax.length; ii++) {
+ // add row
+ tablex += "<tr class=\"bpui_petstorelist_row\"><td class=\"bpui_petstorelist_cell\">";
+ tablex += "<a class=\"bpui_petstorelist_image\" target=\"bppetstore\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
+ datax[ii].productID + "," + datax[ii].itemID + "\">";
+
+ tablex += "<img src=\"http://localhost:8080/petstore/ImageServlet/ " + datax[ii].imageThumbURL + "\"/>";
+
+ tablex += "</a>";
+ tablex += "</td><td class=\"bpui_petstorelist_cell\">";
+ tablex += "<a class=\"bpui_petstorelist_link\" target=\"bppetstore\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
+ datax[ii].productID + "," + datax[ii].itemID + "\">";
+ tablex += "<span class=\"bpui_petstorelist_name\">" + datax[ii].name + "</span><br/>";
+ tablex += "</a>";
+ tablex += "<span class=\"bpui_petstorelist_description\">" + datax[ii].description + "</span>";
+ tablex += "</td><td class=\"bpui_petstorelist_cell\">";
+
+ // add product price
+ tablex += "<span class=\"bpui_petstorelist_price\">\$" + datax[ii].price + "</span><br/>";
+ tablex += "</td></tr>";
+ tablex += "<tr><td colspan=\"3\"><hr class=\"bpui_petstorelist_hr\" /></td></tr>";
+ }
+
+ tablex += "</table></div>";
+
+ // add product previous and next
+ tablex += "</td></tr>";
+ tablex += "<tr><td colspan=\"3\" style=\"text-align:center;\">";
+ tablex += "<span class=\"bpui_petstorelist_previous\" onclick=\"bpui.petstoreList.previousProducts();\"><< PREVIOUS</span> ";
+ tablex += "<span class=\"bpui_petstorelist_next\" onclick=\"bpui.petstoreList.nextProducts();\">NEXT >></span><br/>";
+ tablex += "</td></tr>";
+ tablex += "</table>";
+ targetDiv.innerHTML=tablex;
+ bpui.petstoreList.setSelectedCategory();
+ }
+}
+
+bpui.petstoreList.setSelectedCategory=function() {
+ catx=document.getElementById("bpui.petstoreList.categoryList");
+ for(ii=0; ii < catx.length; ii++) {
+ if(catx.options[ii].value == bpui.petstoreList.category) {
+ catx.options[ii].selected=true;
+ }
+ }
+}
+
+
+bpui.petstoreList.selectCategory=function() {
+ catx=document.getElementById("bpui.petstoreList.categoryList");
+ bpui.petstoreList.category=catx.value;
+
+ bpui.petstoreList.currentCount=0;
+ bpui.petstoreList.updateProducts();
+}
+
+
+bpui.petstoreList.nextProducts=function() {
+ // load data from service
+ bpui.petstoreList.currentCount += 5;
+ bpui.petstoreList.updateProducts();
+}
+
+bpui.petstoreList.previousProducts=function() {
+ bpui.petstoreList.currentCount -= 5;
+ if(bpui.petstoreList.currentCount < 0) {
+ bpui.petstoreList.currentCount=0;
+ }
+ bpui.petstoreList.updateProducts();
+}
+
+bpui.petstoreList.updateProducts=function() {
+ // load data from service
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=" + bpui.petstoreList.currentCount + "&length=5&format=jsonp");
+ bodyTag.appendChild(scriptx);
+}
+
+bpui.petstoreList.createPetstoreList=function(divName) {
+ // keep divName for later references
+ bpui.petstoreList.divName=divName;
+
+ // load data from service
+ bodyTag=document.getElementsByTagName("body")[0];
+ scriptx=document.createElement("script");
+ scriptx.setAttribute("type", "text/javascript");
+ scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=0&length=5&format=jsonp");
+ bodyTag.appendChild(scriptx);
+
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/captchaerror.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/captchaerror.jsp
new file mode 100644
index 0000000..60ef953
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/captchaerror.jsp
@@ -0,0 +1,23 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: captchaerror.jsp,v 1.1 2006/02/17 03:04:22 yutayoshida Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+
+
+<!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>Captcha Error</title>
+ </head>
+ <body>
+
+ <h1>Please input the right captcha string -- <a href="./">Try again</a>
+
+
+
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.js
new file mode 100644
index 0000000..4bdfc69
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.js
@@ -0,0 +1,329 @@
+/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: catalog.js,v 1.21 2007/01/17 22:16:44 basler Exp $ */
+
+var ac;
+var is;
+var controller;
+//var debug=true;
+
+function getApplicationContextRoot() {
+ var urlArray=window.location.toString().split("/", 4);
+ return "/" + urlArray[3];
+}
+
+var applicationContextRoot=getApplicationContextRoot();
+
+function initCatalog() {
+ ac = new AccordionMenu();
+ is = new ImageScroller();
+ is.load();
+ controller = new CatalogController();
+ // wire in a listener for the rating component
+ dojo.event.connect("before", bpui.rating, "doClick", controller, "modifyState");
+ controller.initialize();
+}
+
+function CatalogController() {
+ dojo.event.topic.subscribe("/catalog", this, handleEvent);
+
+ // this object structure contains a list of the products and chunks that have been loaded
+ var pList = new ProductList();
+
+ var CHUNK_SIZE=7;
+ var initalRating;
+ var initalItem;
+ var originalURL;
+
+ // using this for some browsers that do not support innerHTML
+ var useDOMInjection = false;
+
+ var infoName = document.getElementById("infopaneName");
+ var infoRating = document.getElementById("infopaneRating");
+ var infoPrice = document.getElementById("infopanePrice");
+ var infoBuyNow = document.getElementById("infopaneBuyNow");
+ var infoShortDescription = document.getElementById("infopaneShortDescription");
+ var infoDescription = document.getElementById("infopaneDescription");
+ // for paypal
+ var buyNowAmount = document.getElementById("buyNow1_amount");
+ var buyNowItemName = document.getElementById("buyNow1_item_name");
+
+ function handleEvent(args) {
+ if (args.type == "showingItem") {
+ // update the id on the ratring component
+ if (typeof bpui != 'undefined') {
+ var groupId = is.getGroupId();
+ window.location.href= originalURL + "#" + groupId + "," + args.id;
+ if (typeof bpui.rating != 'undefined') {
+ // update the rating
+ bpui.rating.state["rating"].bindings["itemId"]=args.id;
+ bpui.rating.modifyDisplay("rating", args.rating, true);
+ // get the currrent item
+ showItemDetails(args.id);
+ } else {
+ initalItem = args.id;
+ initalRating = args.rating;
+ }
+ } else {
+ // things haven't been loaded to set the inital rating
+ initalItem = args.id;
+ initalRating = args.rating;
+ }
+ } else if (args.type == "getChunk") {
+ populateItems(args.id, args.index, args.currentChunk, false);
+
+ } else if (args.type == "showItemDetails") {
+ showProductDetails(args.productId, args.itemId);
+
+ } else if (args.type == "showProducts") {
+ is.reset();
+ populateItems(args.productId, 0, 0, true);
+ }
+ }
+
+ function showItemDetails(id) {
+ var i = is.getItems().get(id);
+ setNodeText(infoName, i.name + "<br/><a href='javascript:controller.disableItem("" + id + "","" + i.name + "")'><font size='-1' color='white'><i>Flag as inappropriate</i></font></a>");
+ setNodeText(infoPrice, i.price);
+ setNodeText(infoShortDescription, i.shortDescription);
+ setNodeText(infoDescription, i.description);
+ // update the paypal
+ buyNowAmount.value = i.price;
+ buyNowItemName.value = i.name;
+ }
+
+ function setNodeText(t, text) {
+ if (useDOMInjection) {
+ t.lastChild.nodeValue = text;
+ } else {
+ t.innerHTML = text;
+ }
+ }
+
+ this.initialize = function() {
+ // check whether the innerHTML changes can be used in the infopane
+ infoName.innerHTML = " ";
+ if (!useDOMInjection && infoName.innerHTML != " ") {
+ useDOMInjection = true;
+
+ infoName.appendChild(document.createTextNode("Name"));
+ infoPrice.appendChild(document.createTextNode("$0.00"));
+ infoShortDescription.appendChild(document.createTextNode("<description>"));
+ infoDescription.appendChild(document.createTextNode("<description>"));
+ }
+
+ var ratingInstance = bpui.rating.state["rating"];
+ ratingInstance.grade = initalRating;
+ bpui.rating.state["rating"].bindings["itemId"]=initalItem;
+ bpui.rating.modifyDisplay("rating", initalRating, true);
+ loadAccordion();
+ }
+
+
+ this.modifyState = function(arg, rating) {
+ var itemId = initalItem;
+ if (typeof bpui.rating.state["rating"].bindings["itemId"] != 'undefined') {
+ itemId = bpui.rating.state["rating"].bindings["itemId"];
+ }
+ // set the cached rating to the new rating that was set.
+ is.getItems().get(itemId).rating = rating;
+ }
+
+
+ function loadAccordion () {
+ // go out and get the categories
+ // this should be made more geric
+ var bindArgs = {
+ url: applicationContextRoot + "/catalog?command=categories&format=json",
+ mimetype: "text/json",
+ load: function(type,json) {
+ ac.load(json);
+ processURLParameters();
+ },
+ error: ajaxBindError
+ };
+ dojo.io.bind(bindArgs);
+ }
+
+ // this needs to happen after we have loaded the accordion data
+ function processURLParameters() {
+ originalURL = decodeURIComponent(window.location.href);
+ var params = {};
+ // look for the params
+ if (originalURL.indexOf("#") != -1) {
+ var qString = originalURL.split('#')[1];
+ var args = qString.split(',');
+ originalURL = originalURL.split('#')[0];
+ ac.loadCategoryItem(args[0], args[1]);
+ return;
+ } else if (originalURL.indexOf("?") != -1) {
+ var qString = originalURL.split('?')[1];
+ // get rid of any bookmarking stuff
+ if (qString.indexOf("#") != -1) {
+ qString = qString.split('#')[0];
+ originalURL = originalURL.split('#')[0];
+ window.location.href = originalURL;
+ }
+ ps = qString.split('&');
+ // now go through and create the params map as an object literal
+ for (var i in ps) {
+ var t = ps[i].split('=');
+ params[t[0]] = t[1];
+ }
+ // first check for the item in product
+ if (typeof params.itemId != 'undefined' && typeof params.pid != 'undefined') {
+ ac.loadCategoryItem(params.pid, params.itemId);
+ // next if there is a catid definition then do it
+ } else if (typeof params.catid != 'undefined') {
+ ac.showCategory(params.catid);
+ }
+ } else {
+ // nothing is selected
+ ac.showFirstCategory();
+ }
+ }
+
+
+
+ function showProductDetails(pid, itemId) {
+ is.reset();
+ is.showProgressIndicator();
+ var bindArgs = {
+ url: applicationContextRoot + "/catalog?command=itemInChunk&pid=" + pid + "&itemId=" + itemId + "&length=" + CHUNK_SIZE,
+ mimetype: "text/xml",
+ load: function(type,data,postProcessHandler) {
+ processProductData(data,true, pid, itemId);
+ showItemDetails(itemId);
+ is.doMaximize();
+ },
+ error: ajaxBindError
+ };
+ dojo.io.bind(bindArgs);
+ }
+
+
+
+ function populateItems(pid, index, neededChunk, showImage) {
+ is.showProgressIndicator();
+ is.setGroupId(pid);
+ printDebug("populateItems - need to make sure displaying - pid=" + pid + " Chunk=" + neededChunk);
+
+ // check to see if relevant scroller page is already loaded
+ if(!is.containsChunk(pid + "_" + neededChunk)) {
+
+ // not loaded, so see if it is in the cache
+ if (pList.hasChunk(pid, neededChunk)) {
+ // in cache, so add chunk to scroller
+ printDebug("**** adding chunk from cache - pid=" + pid + " Chunk=" + neededChunk);
+ is.addChunk(pid + "_" + neededChunk);
+ is.addItems(pList.getChunk(pid, neededChunk));
+
+ // show first image if you have it
+ if(showImage && is.getScrollerItems().length > 0) {
+ is.showImage(is.getScrollerItems()[0].id);
+ }
+
+ } else {
+ // not in cache so load it
+ startRetIndex=(neededChunk * CHUNK_SIZE);
+
+ printDebug("**** retrieving chunk from server - pid=" + pid + " currentIndex=" + index + " startIndex=" + startRetIndex + " Chunk=" + neededChunk);
+ var bindArgs = {
+ url: applicationContextRoot + "/catalog?command=items&pid=" + pid + "&start=" + startRetIndex + "&length=" + CHUNK_SIZE,
+ mimetype: "text/xml",
+ load: function(type,data,postProcessHandler) {
+ processProductData(data, showImage, pid, null, neededChunk);
+ },
+ error: ajaxBindError
+ };
+ dojo.io.bind(bindArgs);
+ }
+ } else {
+ printDebug("*** items already showing");
+ }
+
+ }
+
+
+ function processProductData(responseXML, showImage, pid, iId, chunkId) {
+ var items = [];
+ var count = responseXML.getElementsByTagName("item").length;
+ for (var loop=0; loop < count ; loop++) {
+
+ var item = responseXML.getElementsByTagName("item")[loop];
+ var itemId = item.getElementsByTagName("id")[0].firstChild.nodeValue;
+ var name = item.getElementsByTagName("name")[0].firstChild.nodeValue;
+ var thumbURL = item.getElementsByTagName("image-tb-url")[0].firstChild.nodeValue;
+ var imageURL = item.getElementsByTagName("image-url")[0].firstChild.nodeValue;
+ var description = item.getElementsByTagName("description")[0].firstChild.nodeValue;
+ var price = item.getElementsByTagName("price")[0].firstChild.nodeValue;
+ var rating = item.getElementsByTagName("rating")[0].firstChild.nodeValue;
+ var shortDescription;
+ if (description.length > 71) {
+ shortDescription = description.substring(0,71) + "...";
+ } else {
+ shortDescription = description;
+ }
+ var i = {id: itemId, name: name, image: imageURL, thumbnail: thumbURL, shortDescription: shortDescription, description: description, price:price, rating: rating};
+ items.push(i);
+ }
+
+ // cache the chunks
+ pList.addChunk(pid, chunkId, items);
+ is.addItems(items);
+ is.addChunk(pid + "_" + chunkId);
+
+ if (showImage && iId == null) {
+ is.setGroupId(pid);
+ is.showImage(items[0].id);
+ } else {
+ is.setGroupId(pid);
+ is.showImage(iId);
+ }
+ is.hideProgressIndicator();
+ }
+
+ function ProductList() {
+ var _plist = this;
+ var map = new Map();
+
+ this.addChunk = function(pid, chunkNumber, items) {
+ map.put(pid + "_" + chunkNumber, items, true);
+ }
+
+ this.getChunk = function(pid, chunkNumber) {
+ return map.get(pid + "_" + chunkNumber);
+ }
+
+ this.hasChunk = function(pid, chunkNumber) {
+ return (map.get(pid + "_" + chunkNumber) != null);
+ }
+
+ this.contents = function() {
+ return map.contents();
+ }
+ }
+
+
+ this.disableItem=function(itemId, itemName) {
+ // go out and get the categories
+ // this should be made more geric
+ if (confirm("Are you sure you want to effectively remove this item from Petstore?")) {
+ var bindArgs = {
+ url: applicationContextRoot + "/catalog?command=disable&id=" + itemId,
+ mimetype: "text/xml",
+ load: function(type,json) {
+ //alert("The item named '" + itemName + "' has been disabled!");
+ pList = new ProductList();
+ is.reset();
+ populateItems(is.getGroupId(), 0, 0, true);
+ },
+ error: ajaxBindError
+ };
+ dojo.io.bind(bindArgs);
+ }
+ }
+
+
+}
+
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp
new file mode 100644
index 0000000..443857b
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp
@@ -0,0 +1,95 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: catalog.jsp,v 1.22 2007/03/16 21:42:03 basler Exp $ --%>
+<script type="text/javascript" src="common.js"></script>
+<script type="text/javascript" src="scroller.js"></script>
+<link rel="stylesheet" type="text/css" href="scroller.css"></link>
+<script type="text/javascript" src="accordion.js"></script>
+<link rel="stylesheet" type="text/css" href="accordion.css"></link>
+<script type="text/javascript" src="catalog.js"></script>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+<body>
+<jsp:include page="banner.jsp" />
+<script type="text/javascript">
+ dojo.event.connect(window, "onload", function(){initCatalog();});
+</script>
+<center>
+ <table border="0">
+ <tr>
+ <td>
+ <table id="accordion">
+ <tr id="accordionTitle" class="accordionTitle"><td>Pets</td></tr>
+ <tr><td>
+ <table id="accordionBody" border="0" class="accordionBody">
+ </table>
+ </td></tr>
+ </table>
+ </td>
+ <td>
+ <div id="CatalogBrowser">
+ <table border="0" class="slider" width="500px" >
+ <tr height="415" valign="top">
+ <td id="bodySpace" border="0" align="center"></td>
+ </tr>
+ <tr id="targetRow">
+ <td width="500" height="70 align="top">
+ <div class="nav" id="right_button">
+ <img src="${pageContext.request.contextPath}/images/right.gif" name="nextRoll" title="Show More Items" border="0">
+ </div>
+ <div class="nav" id="left_button">
+ <img src="${pageContext.request.contextPath}/images/left.gif" name="previousRoll" title="Show Previous Items" border="0">
+ </div>
+ <div id="infopane" class="infopane">
+ <table class="infopaneTable">
+ <tr>
+ <td id="infopaneName" class="infopaneTitle">
+ </td>
+ <td id="infopaneRating" class="infopaneRating">
+ <f:view>
+ <ui:rating id="rating" maxGrade="5" includeNotInterested="false" includeClear="false"
+ hoverTexts="#{RatingBean.ratingText}" notInterestedHoverText="Not Interested" clearHoverText="Clear Rating"
+ grade="#{RatingBean.grade}"/>
+ <f:verbatim></td><td id="infopanePrice" class="infopanePrice"></td><td id="infopanePayPal" class="infopanePayPal"></f:verbatim>
+ <ui:buyNow business="donate(a)animalfoundation.com" id="buyNow1" itemName="Buy Item One"
+ amount="100.00" quantity="1" type="BuyNow" postData="#{PayPalBean.postData}" target="paypal"/>
+ </f:view>
+ </td>
+ <td id="infopaneIndicator" class="infopaneIndicator">
+ </td>
+ <td id="infopaneDetailsIcon">
+ </td>
+ </tr>
+ <tr>
+ <td id="infopaneShortDescription" colspan="7" class="infopaneShortDescription">
+ </td>
+ </tr>
+ <tr style="height:20px">
+ <td></td>
+ </tr>
+ <tr>
+ <td id="infopaneDescription" colspan="6" class="infopaneDescription">
+ </td>
+ </tr>
+ </table>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td style="vertical-align:top; width:300px; text-align:right;">
+ <div id="downloadAds">
+ <jsp:include page="download.jsp" />
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="status" style="text-align:left"></div> <div id="status_2"></div>
+ <div id="dstatus"></div>
+ <div id="injection_point"></div>
+</center>
+<jsp:include page="footer.jsp" />
+</body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp-old b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp-old
new file mode 100644
index 0000000..13914ed
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp-old
@@ -0,0 +1,95 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: catalog.jsp,v 1.20 2006/12/01 21:38:40 basler Exp $ --%>
+<script type="text/javascript" src="common.js"></script>
+<script type="text/javascript" src="scroller.js"></script>
+<link rel="stylesheet" type="text/css" href="scroller.css"></link>
+<script type="text/javascript" src="accordion.js"></script>
+<link rel="stylesheet" type="text/css" href="accordion.css"></link>
+<script type="text/javascript" src="catalog.js"></script>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+<body>
+<jsp:include page="banner.jsp" />
+<script type="text/javascript">
+ dojo.event.connect(window, "onload", function(){initCatalog();});
+</script>
+<center>
+ <table border="0">
+ <tr>
+ <td>
+ <table id="accordion">
+ <tr id="accordionTitle" class="accordionTitle"><td>Pets</td></tr>
+ <tr><td>
+ <table id="accordionBody" border="0" class="accordionBody">
+ </table>
+ </td></tr>
+ </table>
+ </td>
+ <td style="min-width:500px;">
+ <div id="CatalogBrowser">
+ <table width="500px"border="1" class="slider" >
+ <tr height="415" valign="top">
+ <td id="bodySpace" border="0" align="center"></td>
+ </tr>
+ <tr id="targetRow">
+ <td width="500px" height="70px" align="top">
+ <div class="nav" id="right_button">
+ <img src="${pageContext.request.contextPath}/images/right.gif" name="nextRoll" title="Show More Items" border="0">
+ </div>
+ <div class="nav" id="left_button">
+ <img src="${pageContext.request.contextPath}/images/left.gif" name="previousRoll" title="Show Previous Items" border="0">
+ </div>
+ <div id="infopane" class="infopane">
+ <table class="infopaneTable">
+ <tr>
+ <td id="infopaneName" class="infopaneTitle">
+ </td>
+ <td id="infopaneRating" class="infopaneRating">
+ <f:view>
+ <ui:rating id="rating" maxGrade="5" includeNotInterested="false" includeClear="false"
+ hoverTexts="#{RatingBean.ratingText}" notInterestedHoverText="Not Interested" clearHoverText="Clear Rating"
+ grade="#{RatingBean.grade}"/>
+ <f:verbatim></td><td id="infopanePrice" class="infopanePrice"></td><td id="infopanePayPal" class="infopanePayPal"></f:verbatim>
+ <ui:buyNow business="donate(a)animalfoundation.com" id="buyNow1" itemName="Buy Item One"
+ amount="100.00" quantity="1" type="BuyNow" postData="#{PayPalBean.postData}" target="paypal"/>
+ </f:view>
+ </td>
+ <td id="infopaneIndicator" class="infopaneIndicator">
+ </td>
+ <td id="infopaneDetailsIcon">
+ </td>
+ </tr>
+ <tr>
+ <td id="infopaneShortDescription" colspan="7" class="infopaneShortDescription">
+ </td>
+ </tr>
+ <tr style="height:20px">
+ <td></td>
+ </tr>
+ <tr>
+ <td id="infopaneDescription" colspan="6" class="infopaneDescription">
+ </td>
+ </tr>
+ </table>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td style="vertical-align:top; width:300px; text-align:right;">
+ <div id="downloadAds">
+ <jsp:include page="download.jsp" />
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="status" style="text-align:left"></div> <div id="status_2"></div>
+ <div id="dstatus"></div>
+ <div id="injection_point"></div>
+</center>
+<jsp:include page="footer.jsp" />
+</body>
+</html>
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/common.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/common.js
new file mode 100644
index 0000000..03a3ba2
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/common.js
@@ -0,0 +1,77 @@
+
+ function ajaxBindError(type, errObj) {
+ // can't use the error page, because unless and exception in the internal servlet container
+ // nullpointer exceptions will be thrown
+ //window.location="./systemerror.jsp?message=" + errObj.message;
+
+ alert("An Exception has been encountered on the server side during an Ajax request. Please see the server logs for more information " + errObj.message);
+ }
+
+
+ function debugProperties(namex) {
+ var listx="";
+ var ob=namex;
+ for(xx in ob) {
+ listx += xx + " = " + ob[xx] + "<br/>"
+ }
+ //document.write(listx);
+ alert(listx);
+ }
+
+
+ function printDebug(argx) {
+ if (typeof debug != 'undefined') {
+ document.getElementById("status").innerHTML = argx + "<br\>" + document.getElementById("status").innerHTML;
+ }
+ }
+
+
+ function Map() {
+ var size = 0;
+ var keys = [];
+ var values = [];
+
+ this.put = function(key, value, replace) {
+ if (this.get(key) == null) {
+ keys[size] = key;
+ values[size] = value;
+ size++;
+ } else if (replace) {
+ for (i=0; i < size; i++) {
+ if (keys[i] == key) {
+ values[i] = value;
+ }
+ }
+ }
+ }
+
+ this.get = function(key) {
+ for (i=0; i < size; i++) {
+ if (keys[i] == key) {
+ return values[i];
+ }
+ }
+ return null;
+ }
+
+ this.clear = function() {
+ size = 0;
+ keys = [];
+ values = [];
+ }
+
+ // return keys show can show main image
+ this.getKeys = function() {
+ return keys;
+ }
+
+ // dump contents of map keys as string
+ this.contents = function() {
+ var retx="";
+ for(ii=0; ii < size; ii++) {
+ retx += keys[ii] + ", ";
+ }
+ return retx;
+ }
+
+ }
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/download.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/download.jsp
new file mode 100644
index 0000000..20ef584
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/download.jsp
@@ -0,0 +1,22 @@
+<div id="downloadAds" style="text-align:center; border-style:none; width:100%;">
+ <table style="width:100%;">
+ <tr>
+ <td style="text-align:center;">
+ <a href="http://java.sun.com/javaee/downloads/index.jsp " target="downloads"><img style="border:none" src="./images/ad-sdk.jpg" alt="Download Java EE 5 SDK"/></a>
+ <br/>
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align:center;">
+ <a href="http://www.netbeans.org/downloads/index.html " target="downloads"><img style="border:none" src="./images/ad-netbeans.jpg" alt="Download Netbeans IDE"/></a>
+ <br/>
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align:center;">
+ <a href="http://java.com/en/download/index.jsp " target="downloads"><img style="border:none" src="./images/ad-jre.jpg" alt="Download Java SE"/></a>
+ <br/>
+ </td>
+ </tr>
+ </table>
+</div>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.js
new file mode 100644
index 0000000..65855c2
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.js
@@ -0,0 +1,54 @@
+dojo.require("dojo.io");
+function checkAdPage() {
+ var bindArgs = {
+ // check to see if an updated page is available
+ URL: "http://localhost:8080/petstore/downloadAd.txt ",
+ mimetype: "text/plain",
+ load: returnFunctionx,
+ error: ajaxBindError};
+
+ // dispatch the request
+ dojo.io.bind(bindArgs);
+}
+
+function returnFunctionx(type, data, evt) {
+ // statically setup popup for simple case
+ // check return of the dojo call to make sure it is valid
+ if (evt.readyState == 4) {
+ if (evt.status == 200) {
+ alert("data = " + data);
+ document.getElementById("downloadAds").innerHTML=data;
+ }
+ }
+}
+
+
+var req;
+
+function checkAdPageMark() {
+ // calculate arrow and border image location
+ req=initRequest();
+
+ url="http://blueprints.dev.java.net/petstore/downloadAd.txt ",
+ req.onreadystatechange = returnFunctionxMark;
+ req.open("GET", url, true);
+ req.send(null);
+}
+
+
+function returnFunctionxMark() {
+ if (req.readyState == 4) {
+ if (req.status == 200) {
+ alert("data = " + req.responseText);
+ document.getElementById("downloadAds").innerHTML=req.responseText;
+ }
+ }
+}
+
+initRequest=function() {
+ if (window.XMLHttpRequest) {
+ return new XMLHttpRequest();
+ } else if (window.ActiveXObject) {
+ return new ActiveXObject("Microsoft.XMLHTTP");
+ }
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.json b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.json
new file mode 100644
index 0000000..3bbf564
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.json
@@ -0,0 +1,7 @@
+jsonpTest({"keyId":"TestData"});
+
+function testexample() {
+ alert("testexample!!");
+}
+
+testexample();
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.txt b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.txt
new file mode 100644
index 0000000..e9a0944
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.txt
@@ -0,0 +1 @@
+<div id='downloadAds' style='text-align:center; border-style:double; width:100%;'> <table style='width:100%'> <tr> <th style='text-align:center; border-bottom:thin solid black;'>DOWNLOADS Blueprints</th> </tr> <tr> <td style='text-align:center;'> <a href='http://java.sun.com/javaee/downloads/index.jsp ' target='downloads'><img style='border:none' src='./images/ad-sdk.jpg' alt='Download Java EE 5 SDK'/></a> </td> </tr> <tr> <td style='text-align:center;'> <a href='http://www.netbeans.org/downloads/index.html ' target='downloads'><img style='border:none' src='./images/ad-netbeans.jpg' alt='Download Netbeans IDE'/></a> </td> </tr> <tr> <td style='text-align:center;'> <a href='http://java.com/en/download/index.jsp ' target='downloads'><img style='border:none' src='./images/ad-jre.jpg' alt='Download Java SE'/></a> </td> </tr> </table></div>
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/engine.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/engine.js
new file mode 100644
index 0000000..0e5b14e
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/engine.js
@@ -0,0 +1,241 @@
+/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: engine.js,v 1.10 2006/05/03 22:00:32 inder Exp $ */
+
+function Engine () {
+
+ /**
+ *
+ * Load template text aloing with an associated script
+ *
+ * Argument p properties are as follows:
+ *
+ * url : Not required but used if you want to get the template from
+ * something other than the injection serlvet. For example if
+ * you want to load content directly from a a JSP or HTML file.
+ *
+ * p.template : Not required if you specficy a url property Otherewise this
+ * is the name of the template file.
+ *
+ * p.initFunction: Not required. This function or function pointer will be called
+ * after the template text and script are loaded. The result of
+ * the evaluated script will be accessible in the context of
+ * this function.
+ *
+ * p.injectionPoint: Not required. This is the id of an element into. If this is
+ * not specfied a div will be created under the roon node of
+ * the document and the template will be injected into it.
+ * Content is injected by setting the innerHTML property
+ * of an element to the template text.
+ */
+ this.inject = function (p) {
+ var targetUrl;
+ if (!p.url) targetUrl = "controller?command=content&target=/" + p.template;
+ else targetUrl = p.url;
+ var templateArgs = {
+ url: targetUrl,
+ mimetype: "text/html",
+ load: function(type, data) {
+ //if no parent is given append to the document root
+ var nData = includeEmbeddedResources(data, p.initFunction );
+ if (!p.injectionPoint) {
+ var injectionPoint = document.createElement("div");
+ injectionPoint.innerHTML = nData;
+ document.firstChild.appendChild(injectionPoint);
+ } else {
+ p.injectionPoint.innerHTML = nData;
+ }
+ if (p.script) {
+ // now load the associated JavaScript
+ loadScript(p.script,p.initFunction);
+ }
+ }
+ };
+ dojo.io.bind(templateArgs);
+ }
+
+ function loadScript(targetURL,callback) {
+ var templateArgs = {
+ url: targetURL,
+ mimetype: "text/plain",
+ load: callback
+ };
+ dojo.io.bind(templateArgs);
+ }
+
+ /**
+ * If were returning an text document remove any script in the
+ * the document and add it to the global scope using a time out.
+ */
+ function includeEmbeddedResources(target, initFunction) {
+ var bodyText = "";
+ var embeddedScripts = [];
+ var embeddedStyles = [];
+ var scriptReferences = [];
+ var styleReferences = [];
+ var styles = [];
+ // recursively go through and weed out the scripts
+ // TODO: Use some better REGEX processing
+ // TODO: Also support single quotes
+ while (target.indexOf("<script") != -1) {
+ var realStart = target.indexOf("<script");
+ var scriptSourceStart = target.indexOf("src=", (realStart));
+ var scriptElementEnd = target.indexOf(">", realStart);
+ var end = target.indexOf("</script>", (realStart)) + "</script>".length;
+ if (realStart != -1 && scriptSourceStart != -1) {
+ var scriptSourceName;
+ var scriptSourceLinkStart= scriptSourceStart + 5;
+ var scriptSourceLinkEnd= target.indexOf("\"", (scriptSourceLinkStart + 1));
+ if (scriptSourceStart < scriptElementEnd) {
+ scriptSourceName = target.substring(scriptSourceLinkStart, scriptSourceLinkEnd);
+ // prevent multiple inclusions of dojo.js.
+ // there is no way you would get to this point without dojo being included
+ if (scriptSourceName.indexOf("dojo.js") == -1) {
+ scriptReferences.push(scriptSourceName);
+ }
+ }
+ }
+ // now remove the script body
+ var scriptBodyStart = scriptElementEnd + 1;
+ var sBody = target.substring(scriptBodyStart, end - "</script>".length);
+ if (sBody.length > 0) {
+ embeddedScripts.push(sBody);
+ }
+ //remove script
+ target = target.substring(0, realStart) + target.substring(end, target.length);
+ }
+
+ while (target.indexOf("<style") != -1) {
+ var realStart = target.indexOf("<style");
+ var styleElementEnd = target.indexOf(">", realStart);
+ var end = target.indexOf("</style>", (realStart)) ;
+ var styleBodyStart = styleElementEnd + 1;
+ var sBody = target.substring(styleBodyStart, end);
+ if (sBody.length > 0) {
+ embeddedStyles.push(sBody);
+ }
+ //remove style
+ target = target.substring(0, realStart) + target.substring(end + "</style>".length, target.length);
+ }
+ // get the links
+ while (target.indexOf("<link") != -1) {
+ var realStart = target.indexOf("<link");
+ var styleSourceStart = target.indexOf("href=", (realStart));
+ var styleElementEnd = target.indexOf(">", realStart) +1;
+ if (realStart != -1 && styleSourceStart != -1) {
+ var styletSourceName;
+ var styleSourceLinkStart= styleSourceStart + 6;
+ var styleSourceLinkEnd= target.indexOf("\"", (styleSourceLinkStart + 1));
+ if (styleSourceStart < styleElementEnd) {
+ styleSourceName = target.substring(styleSourceLinkStart, styleSourceLinkEnd);
+ styleReferences.push(styleSourceName);
+ }
+ //remove style
+ target = target.substring(0, realStart) + target.substring(styleElementEnd, target.length);
+ }
+ }
+
+ var head = document.getElementsByTagName("head")[0];
+
+ // inject the links
+ for(var loop = 0; loop < styleReferences.length; loop++) {
+ var link = document.createElement("link");
+ link.href = styleReferences[loop];
+ link.type = "text/css";
+ link.rel = "stylesheet";
+ head.appendChild(link);
+ }
+
+ var stylesElement;
+ if (embeddedStyles.length > 0) {
+ stylesElement = document.createElement("style");
+ stylesElement.type="text/css";
+ var stylesText;
+ for(var loop = 0; loop < embeddedStyles.length; loop++) {
+ stylesText = stylesText + embeddedStyles[loop];
+ }
+ if (document.styleSheets[0].cssText) {
+ document.styleSheets[0].cssText = document.styleSheets[0].cssText + stylesText;
+ } else {
+ stylesElement.appendChild(document.createTextNode(stylesText));
+ head.appendChild(stylesElement);
+ }
+ }
+
+ scriptLoader(scriptReferences, 0, function() {
+ this.embeddedScripts = embeddedScripts;
+ // evaluate the embedded javascripts in the order they were added
+ // consider using an onload handler
+ for(var loop = 0; loop < embeddedScripts.length; loop++) {
+ //alert("evaluating " + embeddedScripts[loop]);
+ var script = embeddedScripts[loop];
+ // append to the script a method to call the scriptLoaderCallback
+ eval(script);
+ if (loop == (embeddedScripts.length -1)) {
+ initFunction();
+ }
+ }
+ });
+
+ return target;
+ }
+
+
+ /**
+ * Load the scripts in order and load them one after on another
+ */
+ function scriptLoader(scripts, index, callbackFunction) {
+ var head = document.getElementsByTagName("head").item(0);
+ var scriptElement = document.createElement("script");
+ scriptElement.id = "c_script_" + index;
+ scriptElement.type = "text/javascript";
+
+ var loadHandler = function () {
+ if (index < scripts.length && index != scripts.length -1) {
+ scriptLoader(scripts, ++index, callbackFunction);
+ } else {
+ callbackFunction();
+ }
+ }
+ if (typeof scriptElement.onreadystatechange != 'undefined') {
+ scriptElement.onreadystatechange = function () {
+ if (this.readyState == 'loaded') {
+ loadHandler();
+ }
+ };
+ }
+ scriptElement.onload = loadHandler;
+
+ // Safari not seeing the onload event and does not support the onreadystate
+ if (navigator.userAgent.toLowerCase().indexOf("safari") != -1) {
+ scriptElement.src = scripts[index];
+ setTimeout(loadHandler, 0);
+ }
+ head.appendChild(scriptElement);
+ setTimeout("document.getElementById('c_script_" + index + "').src ='" + scripts[index] + "'", 0);
+
+ scriptElement = null;
+ head = null;
+ }
+
+ /**
+ * If were returning an XML document remove any script in the
+ * the document and add it to the global scope using a time out.
+ */
+ function includeEmbeddedScripts(xmlDocument) {
+ var items = new Array();
+ var xmlDocument = document.getElementsByTagName("script");
+
+ for(var loop = 0; loop < targets.length; loop++) {
+ var children = targets[loop].childNodes;
+ var iScript = "";
+ for(var innerLoop = 0; innerLoop < children.length; innerLoop++) {
+ iScript += children[innerLoop].data;
+ }
+ items.add(iScript);
+ children[loop].parentNode.removeChild(children[loop]);
+ }
+ for(var loop = 0; loop < items.length; loop++) {
+ setTimeout(items[loop],0);
+ }
+ }
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileupload.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileupload.jsp
new file mode 100644
index 0000000..bb8fb85
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileupload.jsp
@@ -0,0 +1,266 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: fileupload.jsp,v 1.57 2007/03/08 21:58:48 inder Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="com.sun.javaee.blueprints.petstore.util.PetstoreConstants"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+<html>
+ <head>
+ <title>Petstore Seller page</title>
+ <script type="text/javascript">
+ var submittingForm=false;
+
+ function testRetFunction(type, data, evt){
+ if (evt.readyState == 4) {
+ if(evt.status == 200) {
+ // check for error
+ submittingForm=false;
+ var resultx=data.getElementsByTagName("response")[0];
+ var message=resultx.getElementsByTagName("message")[0].childNodes[0].nodeValue;
+ if(message == "Captchas Filter Error") {
+ // captcha error
+ alert("Authorization failed : please enter the correct captcha string");
+ } else if(message == "Validation Error") {
+ alert("Validation failed on the Server :\n" + resultx.getElementsByTagName("detail")[0].childNodes[0].nodeValue);
+ } else if(message == "Upload Size Error") {
+ alert("The size of the uploaded image must not be more than 100 KB");
+ } else {
+ // fileupload complete
+ var thumbpath=resultx.getElementsByTagName("thumbnail")[0].childNodes[0].nodeValue;
+ var productId=resultx.getElementsByTagName("productId")[0].childNodes[0].nodeValue;
+ var itemid=resultx.getElementsByTagName("itemId")[0].childNodes[0].nodeValue;
+ // forward to status page
+ location.href="fileuploadstatus.jsp?message=" + message + "&id=" + itemid + "&productId=" + productId + "&thumb=" + thumbpath;
+ }
+ } else {
+ // server error, send to error page
+ // can't forward to errorpage because null pointer gets thrown on lookup of status code ("javax.servlet.error.status_code")
+ //ajaxBindError(type, data.message);
+ alert("Persistence failed : Please check if the server logs for more information!")
+ }
+ }
+ }
+
+
+ function storeCookie() {
+ currentcap = "j_captcha_response="+document.getElementById("TestFileuploadForm:captcharesponse").value;
+ document.cookie = currentcap;
+ }
+
+ function extractCity(citystatezip) {
+ var index = citystatezip.indexOf(',');
+ var nextcity = citystatezip.substring(0, index+4);
+ return nextcity;
+ }
+
+ function chooseCity(city) {
+ var index = city.indexOf(',');
+ var state = city.substring(index+2, index+4);
+ var zip = city.substring(index+5);
+ city = city.substring(0, index);
+
+ document.getElementById('TestFileuploadForm:cityField').value = city;
+ document.getElementById('TestFileuploadForm:stateField').value = state;
+ document.getElementById('TestFileuploadForm:zipField').value = zip;
+ }
+
+ function fileuploadOnsubmit() {
+ if(!submittingForm) {
+ var valMess="";
+
+ // save rich text editor text to element
+ var descx=dojo.widget.byId('rtEditor').getEditorContent()
+ var lowDescx=descx.toLowerCase();
+
+ // START: check validation
+ if(dojo.byId("TestFileuploadForm:name").value == "") {
+ valMess += "Error: Pet Name is required.\n";
+ }
+
+ // make sure there isn't a script/link tag in the description
+ if(lowDescx == "" || lowDescx.indexOf("<script") > -1 || lowDescx.indexOf("<link") > -1) {
+ valMess += "Error: The Description must exist and the field can't have a '<script>' and/or a '<link>' tag in it\n";
+ }
+
+ // make sure price is a number
+ var pricex=dojo.byId("TestFileuploadForm:price").value;
+ if(pricex == "" || isNaN(parseInt(pricex))) {
+ // price should be a number
+ valMess += "Error: Price should should exist and be a number in American Dollars in the format '*.00'.\n";
+ }
+
+ // make sure the upload file ends in an suffix
+ var filex=dojo.byId("fileToUploadId").value;
+ var lengthx=filex.length;
+ var suffix=filex.substr(lengthx-4).toLowerCase();
+ if(lengthx < 1 || (suffix != ".jpg" && suffix != ".gif" && suffix != ".png")) {
+ // not a proper upload so error
+ valMess += "Error: The image upload file must exist and be of type .jpg, .gif or .png\n";
+ }
+
+
+ // make sure make and address is entered
+ if(dojo.byId("TestFileuploadForm:firstName").value == "") {
+ // price should be a number
+ valMess += "Error: First Name is required.\n";
+ }
+ if(dojo.byId("TestFileuploadForm:lastName").value == "") {
+ valMess += "Error: Last Name is required.\n";
+ }
+ if(dojo.byId("TestFileuploadForm:street1").value == "") {
+ valMess += "Error: Street is required.\n";
+ }
+ if(dojo.byId("TestFileuploadForm:cityField").value == "") {
+ valMess += "Error: City is required.\n";
+ }
+ if(dojo.byId("TestFileuploadForm:stateField").value == "") {
+ valMess += "Error: State is required.\n";
+ }
+ if(dojo.byId("TestFileuploadForm:zipField").value == "") {
+ valMess += "Error: Zip Code is required.\n";
+ }
+
+ if(valMess != "") {
+ // error, show message
+ alert(valMess + "\nPlease addresses the error(s) and re-submit your entry!");
+ } else {
+ // no validation errors, so submit form
+ submittingForm=true;
+ // set description
+ dojo.byId('description').value=descx;
+
+ storeCookie()
+ document.forms['TestFileuploadForm'].onsubmit();
+ }
+ }
+ }
+
+ function showFU() {
+ document.getElementById("fucomponent").style.visibility = "visible";
+ }
+
+ function switchPanes(fromDivId, toDivId) {
+ // show pane
+ var divx=document.getElementById(fromDivId);
+ divx.style.visibility='hidden';
+ divx=document.getElementById(toDivId);
+ divx.style.visibility='visible';
+ }
+</script>
+<style>
+span.button {
+ background-color: #6699CC;
+ color: white;
+ cursor:pointer;
+ border: thin outset black;
+ padding: 1px 5px;
+}
+div.pane {
+ width: 90%;
+ background-color: #EEEEEE;
+ border: thin double blue;
+ padding: .5cm;
+ font: 12px arial;
+}
+
+.nameCol {
+ width: 45%;
+}
+.dataCol {
+ width: 55%;
+}
+
+</style>
+ </head>
+ <body onload="showFU()">
+ <jsp:include page="banner.jsp"/>
+ <script>dojo.require("dojo.widget.Editor2");</script>
+ <br/>
+ <div id="fucomponent" style="visibility:hidden;">
+ <f:view>
+
+ <ui:fileUploadTag id="TestFileuploadForm" serverLocationDir="#{FileUploadBean.uploadImageDirectory}"
+ postProcessingMethod="#{FileUploadBean.postProcessingMethod}"
+ retMimeType="text/xml" retFunction="testRetFunction"
+ progressBarDivId="progress" progressBarSize="40">
+ <div id="pane2" class="pane" style="visibility: hidden;">
+ <h:panelGrid border="0" columns="2" style="width: 100%" columnClasses="nameCol, dataCol">
+ <f:facet name="header">
+ <h:outputText value="Information about yourself"/>
+ </f:facet>
+ <h:outputText value="*First Name"/>
+ <h:inputText size="20" id="firstName"></h:inputText>
+ <h:outputText value="*Last Name"/>
+ <h:inputText size="20" id="lastName"></h:inputText>
+ <h:outputText value="Seller Email"/>
+ <h:inputText size="20" id="email"></h:inputText>
+ <h:outputText value="*Street"/>
+ <h:inputText size="20" id="street1"></h:inputText>
+ <h:outputText value="*City"/>
+ <ui:autoComplete size="20" maxlength="10" id="cityField"
+ completionMethod="#{AutocompleteBean.completeCity}"
+ value="#{AddressBean.city}" required="true"
+ ondisplay="function(item) { return extractCity(item); }"
+ onchoose="function(item) { return chooseCity(item); }" />
+ <h:outputText value="*State"/>
+ <ui:autoComplete size="2" maxlength="10" id="stateField"
+ completionMethod="#{AutocompleteBean.completeState}"
+ value="#{AddressBean.state}" required="true" />
+ <h:outputText value="*Zip Code"/>
+ <h:inputText size="5" id="zipField" value="#{AddressBean.zip}" required="true" />
+
+ <h:outputText value="Enter the text as it is shown below (case insensitive)"/>
+ <h:outputText />
+ <h:graphicImage id="captchaImg" url="CaptchaServlet"/>
+ <h:inputText id="captcharesponse"></h:inputText>
+ <br/><span class="button" onclick="switchPanes('pane2', 'pane1');"><< Previous</span>
+ <span class="button" onclick="fileuploadOnsubmit()">Submit</span>
+ <br/><div id="progress"></div><br/>
+
+ </h:panelGrid>
+ </div>
+ <div class="pane"style="position:absolute; top:125px;" id="pane1">
+ <h:panelGrid border="0" columns="2" style="width: 100%" columnClasses="nameCol, dataCol">
+ <f:facet name="header">
+ <h:outputText value="Information about your pet"/>
+ </f:facet>
+
+ <h:outputText value="Category"/>
+ <h:selectOneMenu id="product">
+ <f:selectItems value="#{FileUploadBean.products}"/>
+ </h:selectOneMenu>
+
+ <h:outputText value="*Pet's Name"/>
+ <h:inputText size="20" id="name"></h:inputText>
+
+ <h:outputText value="*Description (3 lines max display in catalog)"/>
+
+ <div style="border-style:inset; border-width:thin; background-color:white">
+ <textarea wrap="soft" dojoType="Editor2" widgetId="rtEditor" id="description" name="TestFileuploadForm:description"
+ toolbarTemplatePath="${pageContext.request.contextPath}/rteToolBar.html"></textarea>
+ </div>
+
+ <h:outputText value="*Price (is US dollars)"/>
+ <h:inputText size="20" id="price"></h:inputText>
+
+ <h:outputText value="*Image File"/>
+ <input type="file" size="20" name="fileToUpload" id="fileToUploadId"/>
+
+ <h:outputText value="Custom Tag Keywords (separated by spaces)"/>
+ <h:inputText size="20" id="tags"></h:inputText>
+ </h:panelGrid>
+ <br/><span class="button" onclick="switchPanes('pane1', 'pane2');">Next >></span>
+ </div>
+ Required fields are designated by a *
+ </ui:fileUploadTag>
+ </f:view>
+ </div>
+
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileuploadstatus.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileuploadstatus.jsp
new file mode 100644
index 0000000..50e3730
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileuploadstatus.jsp
@@ -0,0 +1,134 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: fileuploadstatus.jsp,v 1.8 2006/05/05 21:05:47 yutayoshida Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>Seller Photo Submit Status</title>
+ <style type="text/css">
+ #status { background-color : #E0FFFF;
+ border : none;
+ width : 50%;
+ }
+ </style>
+ <script type="text/javascript">
+ window.onload = function() {
+ var thumbfile = "${param.thumb}";
+ if (thumbfile == "") {
+ thumbfile = "${sessionScope['fileuploadResponse'].thumbnail}";
+ }
+ thumbpath = "http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.servletContext.contextPath}/ImageServlet/";
+ thumbpath += thumbfile;
+ var divNode = document.getElementById("thumb");
+ var imgNode = document.createElement("img");
+ imgNode.setAttribute("src", thumbpath);
+ divNode.appendChild(imgNode);
+
+ // initialize buttons
+ initButtonImage();
+ }
+
+ var imageLayerId = new Array();
+ var imageLayerG = new Array();
+ var imageLayerC = new Array();
+ var imageText = new Array();
+ function initButtonImage(){
+ imageLayerId[1] ="seller"
+ imageLayerG[1] = "../images/seller-thumb-g.jpg";
+ imageLayerC[1] = "../images/seller-thumb.jpg";
+ imageLayerId[2] ="catalog"
+ imageLayerG[2] = "../images/catalog-thumb-g.jpg";
+ imageLayerC[2] = "../images/catalog-thumb.jpg";
+ imageLayerId[3] ="home"
+ imageLayerG[3] = "../images/index-thumb-g.jpg";
+ imageLayerC[3] = "../images/index-thumb.jpg";
+
+ imageText[1] = "Submit another pet";
+ imageText[2] = "Go to your pet page";
+ imageText[3] = "Go back to PetStore home";
+ }
+
+ function highlightButton(n) {
+ switchButton(true, n);
+ }
+ function darkenButton(n) {
+ switchButton(false, n);
+ }
+
+ function switchButton(highlight, n){
+ var id = imageLayerId[n];
+ var btn = document.getElementById(id);
+ if (highlight) {
+ btn.src = imageLayerC[n];
+ popupText(imageText[n]);
+ } else {
+ btn.src = imageLayerG[n];
+ popupText(null);
+ }
+ }
+ var Mx;
+ var My;
+ function popupText(txt) {
+ var pNode = document.getElementById("popupText");
+ var rx;
+ var ry;
+ if (document.all) {
+ rx = event.clientX + document.body.scrollLeft +10;
+ ry = event.clientY + document.body.scrollTop -20;
+ } else {
+ rx = Mx + 10;
+ ry = My -20;
+ }
+ if (txt) {
+ pNode.style.display = "block";
+ pNode.style.left = rx + "px";
+ pNode.style.top = ry + "px";
+ pNode.innerHTML = txt;
+ } else {
+ pNode.style.display = "none";
+ pNode.innerHTML = "";
+ }
+ }
+ function getMouseXY(mEvent) {
+ Mx = mEvent.pageX;
+ My = mEvent.pageY;
+ }
+ window.onmousemove = getMouseXY;
+ </script>
+ </head>
+ <body>
+ <jsp:include page="banner.jsp"/>
+ <center>
+ <div id="status">
+ <h4>${param.message}</h4>
+ Here's the uploaded photo of your pet<br/><br/>
+ <div id="thumb"></div>
+ <br/><br/>
+ Would you like to :-<br/><br/>
+
+ <div id="popupText" style="position:absolute;z-index:2;border:1px solid;padding:5px;
+ border-color:blue;font-size:10pt;background-color:#00ffff;color:blue;display:none"></div>
+ <table border="0" cellpadding="4" cellspacing="4">
+ <tr>
+ <td><a href="fileupload.jsp" onmouseover="highlightButton(1)" onmouseout="darkenButton(1)">
+ <img name="seller" id="seller" src="../images/seller-thumb-g.jpg" alt="seller" width="105" height="60" border="0">
+ </a>
+ </td>
+ <td><a href="catalog.jsp?pid=${param.productId}&itemId=${param.id}" onmouseover="highlightButton(2)" onmouseout="darkenButton(2)">
+ <img name="catalog" id="catalog" src="../images/catalog-thumb-g.jpg" alt="catalog" width="105" height="60" border="0">
+ </a>
+ </td>
+ <td><a href="http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.servletContext.contextPath}/index.jsp" onmouseover="highlightButton(3)" onmouseout="darkenButton(3)">
+ <img name="home" id="home" src="../images/index-thumb-g.jpg" alt="index" width="105" height="60" border="0">
+ </a>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </center>
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/footer.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/footer.jsp
new file mode 100644
index 0000000..8fda523
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/footer.jsp
@@ -0,0 +1,15 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: footer.jsp,v 1.10 2007/01/31 19:40:34 basler Exp $ --%>
+
+<hr/>
+<center>
+ If you have any questions or suggestions, please use the <a
+ href="https://blueprints.dev.java.net/feedback.html " target="petstore">feedback page</a>.
+ <br/>
+ To access the latest versions of any of the BluePrints projects, please use the <a
+ href="https://blueprints.dev.java.net/downloads.html " target="petstore">download page</a>.
+ <br/>
+ <a href="http://blueprints.dev.java.net/ " target="petstore">Java BluePrints</a> |
+ <a href="http://sun.com/ " target="petstore">Sun Microsystems</a> © 2007 Sun Microsystems Inc. All rights reserved. Use is subject to license terms.
+</center>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081-s.jpg
new file mode 100644
index 0000000..734f0ba
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081.jpg
new file mode 100644
index 0000000..1d6b615
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083-s.jpg
new file mode 100644
index 0000000..d50fc6f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083.jpg
new file mode 100644
index 0000000..77fb082
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084-s.jpg
new file mode 100644
index 0000000..93a3832
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084.jpg
new file mode 100644
index 0000000..b7c7c3b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086-s.jpg
new file mode 100644
index 0000000..0c9ce17
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086.jpg
new file mode 100644
index 0000000..caaf6a7
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088-s.jpg
new file mode 100644
index 0000000..6c7d06e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088.jpg
new file mode 100644
index 0000000..f7daf7a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099-s.jpg
new file mode 100644
index 0000000..2794a4b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099.jpg
new file mode 100644
index 0000000..57175e3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100-s.jpg
new file mode 100644
index 0000000..d1b3610
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100.jpg
new file mode 100644
index 0000000..dd57db1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101-s.jpg
new file mode 100644
index 0000000..2f14c53
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101.jpg
new file mode 100644
index 0000000..334a0f8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102-s.jpg
new file mode 100644
index 0000000..6bec9fa
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102.jpg
new file mode 100644
index 0000000..6219a97
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103-s.jpg
new file mode 100644
index 0000000..61b9b59
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103.jpg
new file mode 100644
index 0000000..d4a91e0
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104-s.jpg
new file mode 100644
index 0000000..9c7c4ab
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104.jpg
new file mode 100644
index 0000000..93eb9da
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107-s.jpg
new file mode 100644
index 0000000..cacb8f6
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107.jpg
new file mode 100644
index 0000000..f1da9d8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109-s.jpg
new file mode 100644
index 0000000..a999838
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109.jpg
new file mode 100644
index 0000000..e3eeb3e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113-s.jpg
new file mode 100644
index 0000000..bf3aa59
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113.jpg
new file mode 100644
index 0000000..990e44b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115-s.jpg
new file mode 100644
index 0000000..873beb5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115.jpg
new file mode 100644
index 0000000..e9f2fbb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117-s.jpg
new file mode 100644
index 0000000..4119ae3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117.jpg
new file mode 100644
index 0000000..efa8fa8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118-s.jpg
new file mode 100644
index 0000000..6ac0c46
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118.jpg
new file mode 100644
index 0000000..1ab033b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122-s.jpg
new file mode 100644
index 0000000..4b75817
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122.jpg
new file mode 100644
index 0000000..0bbad05
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123-s.jpg
new file mode 100644
index 0000000..f63f01a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123.jpg
new file mode 100644
index 0000000..10f22cc
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125-s.jpg
new file mode 100644
index 0000000..e18660f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125.jpg
new file mode 100644
index 0000000..e651619
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127-s.jpg
new file mode 100644
index 0000000..3f93502
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127.jpg
new file mode 100644
index 0000000..d33f856
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129-s.jpg
new file mode 100644
index 0000000..43cd251
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129.jpg
new file mode 100644
index 0000000..aa0820c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134-s.jpg
new file mode 100644
index 0000000..8b73de1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134.jpg
new file mode 100644
index 0000000..248ca28
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138-s.jpg
new file mode 100644
index 0000000..0c3fb87
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138.jpg
new file mode 100644
index 0000000..ff93f90
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142-s.jpg
new file mode 100644
index 0000000..4571a4b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142.jpg
new file mode 100644
index 0000000..647323b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149-s.jpg
new file mode 100644
index 0000000..e870f66
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149.jpg
new file mode 100644
index 0000000..23dd110
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154-s.jpg
new file mode 100644
index 0000000..3355eaa
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154.jpg
new file mode 100644
index 0000000..531ec1e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155-s.jpg
new file mode 100644
index 0000000..9cd85f5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155.jpg
new file mode 100644
index 0000000..72377b5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156-s.jpg
new file mode 100644
index 0000000..2788d06
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156.jpg
new file mode 100644
index 0000000..2b836df
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157-s.jpg
new file mode 100644
index 0000000..9ef87c3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157.jpg
new file mode 100644
index 0000000..753d1e9
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158-s.jpg
new file mode 100644
index 0000000..29953c4
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158.jpg
new file mode 100644
index 0000000..a4a0247
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159-s.jpg
new file mode 100644
index 0000000..7caf368
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159.jpg
new file mode 100644
index 0000000..9f18ed6
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162-s.jpg
new file mode 100644
index 0000000..65bc52f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162.jpg
new file mode 100644
index 0000000..b0f299d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165-s.jpg
new file mode 100644
index 0000000..d1e9cc3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165.jpg
new file mode 100644
index 0000000..862c6f8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-jre.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-jre.jpg
new file mode 100644
index 0000000..5c7b519
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-jre.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-netbeans.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-netbeans.jpg
new file mode 100644
index 0000000..079b2fa
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-netbeans.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-sdk.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-sdk.jpg
new file mode 100644
index 0000000..2a1a88a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-sdk.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise-thumb.jpg
new file mode 100644
index 0000000..4d1ed42
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise.jpg
new file mode 100644
index 0000000..87ea286
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2-thumb.jpg
new file mode 100644
index 0000000..7b76088
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2.jpg
new file mode 100644
index 0000000..8005ff3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony-s.jpg
new file mode 100644
index 0000000..4b21f49
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony.jpg
new file mode 100644
index 0000000..88a889c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey-s.jpg
new file mode 100644
index 0000000..8adf561
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey.jpg
new file mode 100644
index 0000000..c262965
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/banner_logo.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/banner_logo.gif
new file mode 100644
index 0000000..85de81a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/banner_logo.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird1.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird1.gif
new file mode 100644
index 0000000..06f1abe
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird1.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird2.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird2.gif
new file mode 100644
index 0000000..9601f1c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird2.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird3.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird3.gif
new file mode 100644
index 0000000..f48a7ec
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird3.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird4.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird4.gif
new file mode 100644
index 0000000..eaaa3e5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird4.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird5.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird5.gif
new file mode 100644
index 0000000..9f440f1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird5.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird6.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird6.gif
new file mode 100644
index 0000000..affd8e0
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird6.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/birds_icon.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/birds_icon.gif
new file mode 100644
index 0000000..8b14629
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/birds_icon.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit-s.jpg
new file mode 100644
index 0000000..8c54af1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit.jpg
new file mode 100644
index 0000000..ccdea14
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob-s.jpg
new file mode 100644
index 0000000..b3f1d09
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob.jpg
new file mode 100644
index 0000000..d3dcfd7
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle-thumb.jpg
new file mode 100644
index 0000000..a4b48da
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle.jpg
new file mode 100644
index 0000000..5a172c5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2-thumb.jpg
new file mode 100644
index 0000000..40303af
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2.jpg
new file mode 100644
index 0000000..83d74d2
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3-thumb.jpg
new file mode 100644
index 0000000..004dfe3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3.jpg
new file mode 100644
index 0000000..3e77142
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise-thumb.jpg
new file mode 100644
index 0000000..4c260e8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise.jpg
new file mode 100644
index 0000000..b146396
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-med.jpg
new file mode 100644
index 0000000..742336f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-thumb.jpg
new file mode 100644
index 0000000..e5bbc24
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat1.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat1.gif
new file mode 100644
index 0000000..1fd4d1c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat1.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat10.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat10.gif
new file mode 100644
index 0000000..8bc7f6c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat10.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat11.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat11.gif
new file mode 100644
index 0000000..a51bc96
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat11.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat12.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat12.gif
new file mode 100644
index 0000000..e594c67
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat12.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat2.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat2.gif
new file mode 100644
index 0000000..6ac8718
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat2.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat3.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat3.gif
new file mode 100644
index 0000000..4716f5d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat3.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat4.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat4.gif
new file mode 100644
index 0000000..0793e3f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat4.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat5.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat5.gif
new file mode 100644
index 0000000..2d289ba
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat5.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat6.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat6.gif
new file mode 100644
index 0000000..2ea6132
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat6.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat7.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat7.gif
new file mode 100644
index 0000000..159ba6a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat7.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat8.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat8.gif
new file mode 100644
index 0000000..a9ed7c9
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat8.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat9.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat9.gif
new file mode 100644
index 0000000..02faffb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat9.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb-g.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb-g.jpg
new file mode 100644
index 0000000..1a13b11
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb-g.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb.jpg
new file mode 100644
index 0000000..d6148de
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cats_icon.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cats_icon.gif
new file mode 100644
index 0000000..db70d7d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cats_icon.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cbutton.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cbutton.gif
new file mode 100644
index 0000000..83b8761
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cbutton.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle-s.jpg
new file mode 100644
index 0000000..84e4e89
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle.jpg
new file mode 100644
index 0000000..5830e57
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie-s.jpg
new file mode 100644
index 0000000..bb91e94
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie.jpg
new file mode 100644
index 0000000..9e8d17d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/check_all.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/check_all.gif
new file mode 100644
index 0000000..3c517f3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/check_all.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-med.jpg
new file mode 100644
index 0000000..575a854
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-thumb.jpg
new file mode 100644
index 0000000..9c2dc57
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog1.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog1.gif
new file mode 100644
index 0000000..92e71b5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog1.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog2.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog2.gif
new file mode 100644
index 0000000..e581980
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog2.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog3.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog3.gif
new file mode 100644
index 0000000..9baa503
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog3.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog4.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog4.gif
new file mode 100644
index 0000000..9124427
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog4.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog5.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog5.gif
new file mode 100644
index 0000000..3f1690e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog5.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog6.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog6.gif
new file mode 100644
index 0000000..2bf1380
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog6.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dogs_icon.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dogs_icon.gif
new file mode 100644
index 0000000..b13e5b9
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dogs_icon.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-med.jpg
new file mode 100644
index 0000000..ff83a16
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-thumb.jpg
new file mode 100644
index 0000000..814dab1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-med.jpg
new file mode 100644
index 0000000..2623f3c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-thumb.jpg
new file mode 100644
index 0000000..ccf10a2
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-med.jpg
new file mode 100644
index 0000000..7a7a59e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-thumb.jpg
new file mode 100644
index 0000000..1f65136
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie-s.jpg
new file mode 100644
index 0000000..4709e19
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie.jpg
new file mode 100644
index 0000000..76a7ff1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith-s.jpg
new file mode 100644
index 0000000..13194bd
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith.jpg
new file mode 100644
index 0000000..cd8ad6e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish2.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish2.gif
new file mode 100644
index 0000000..4d9916c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish2.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish3.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish3.gif
new file mode 100644
index 0000000..258489d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish3.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish4.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish4.gif
new file mode 100644
index 0000000..d3e39e1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish4.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish_icon.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish_icon.gif
new file mode 100644
index 0000000..730c813
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish_icon.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake-thumb.jpg
new file mode 100644
index 0000000..cbe5030
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake.jpg
new file mode 100644
index 0000000..11954df
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/frog1.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/frog1.gif
new file mode 100644
index 0000000..4bf637f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/frog1.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano-s.jpg
new file mode 100644
index 0000000..097b144
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano.jpg
new file mode 100644
index 0000000..ec5d64b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-med.jpg
new file mode 100644
index 0000000..31bb43c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-thumb.jpg
new file mode 100644
index 0000000..70cdc2a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-med.jpg
new file mode 100644
index 0000000..a6646c7
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-thumb.jpg
new file mode 100644
index 0000000..262659a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig-thumb.jpg
new file mode 100644
index 0000000..ea0c069
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig.jpg
new file mode 100644
index 0000000..828bba2
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony-s.jpg
new file mode 100644
index 0000000..5b28bd0
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony.jpg
new file mode 100644
index 0000000..3c4d322
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison-s.jpg
new file mode 100644
index 0000000..c7c1486
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison.jpg
new file mode 100644
index 0000000..6003c8c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-med.jpg
new file mode 100644
index 0000000..a538759
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-thumb.jpg
new file mode 100644
index 0000000..2369c90
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey-s.jpg
new file mode 100644
index 0000000..13c3f9b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey.jpg
new file mode 100644
index 0000000..61d877b
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter-s.jpg
new file mode 100644
index 0000000..4303498
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter.jpg
new file mode 100644
index 0000000..37ebbe9
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb-g.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb-g.jpg
new file mode 100644
index 0000000..a42ddb4
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb-g.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb.jpg
new file mode 100644
index 0000000..571475a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/indicator-black.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/indicator-black.gif
new file mode 100644
index 0000000..6da716a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/indicator-black.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ja_flag.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ja_flag.gif
new file mode 100644
index 0000000..31d0ada
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ja_flag.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack-s.jpg
new file mode 100644
index 0000000..d4144da
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack.jpg
new file mode 100644
index 0000000..fe37700
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen-s.jpg
new file mode 100644
index 0000000..d83d3f9
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen.jpg
new file mode 100644
index 0000000..ba460be
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-med.jpg
new file mode 100644
index 0000000..7afa021
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-thumb.jpg
new file mode 100644
index 0000000..f7fa2b2
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-med.jpg
new file mode 100644
index 0000000..8c06c3d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-thumb.jpg
new file mode 100644
index 0000000..84e82f5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady-s.jpg
new file mode 100644
index 0000000..72a724f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady.jpg
new file mode 100644
index 0000000..ae9054e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left.gif
new file mode 100644
index 0000000..46b3630
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left_2.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left_2.gif
new file mode 100644
index 0000000..f50cbed
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left_2.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb.jpg
new file mode 100644
index 0000000..620c826
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb2.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb2.jpg
new file mode 100644
index 0000000..2a52e80
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb2.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko.jpg
new file mode 100644
index 0000000..7b77428
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko2.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko2.jpg
new file mode 100644
index 0000000..b3748ae
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko2.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard1.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard1.gif
new file mode 100644
index 0000000..665c4d6
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard1.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard2.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard2.gif
new file mode 100644
index 0000000..2e59d89
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard2.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard3.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard3.gif
new file mode 100644
index 0000000..6dca58f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard3.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-med.jpg
new file mode 100644
index 0000000..cef3163
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-thumb.jpg
new file mode 100644
index 0000000..7e97d51
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw-thumb.jpg
new file mode 100644
index 0000000..a95ff80
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw.jpg
new file mode 100644
index 0000000..b7ae026
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie-s.jpg
new file mode 100644
index 0000000..7acf48e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie.jpg
new file mode 100644
index 0000000..140a325
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna-s.jpg
new file mode 100644
index 0000000..4b96d8d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna.jpg
new file mode 100644
index 0000000..5e3b381
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario-s.jpg
new file mode 100644
index 0000000..f2f1848
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario.jpg
new file mode 100644
index 0000000..a68cd9e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maximize.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maximize.gif
new file mode 100644
index 0000000..da05f30
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maximize.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula-thumb.jpg
new file mode 100644
index 0000000..35387ca
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula.jpg
new file mode 100644
index 0000000..7365af9
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi-s.jpg
new file mode 100644
index 0000000..0e6a1a5
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi.jpg
new file mode 100644
index 0000000..950c84e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/minimize.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/minimize.gif
new file mode 100644
index 0000000..8408264
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/minimize.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique-s.jpg
new file mode 100644
index 0000000..dea6b6d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique.jpg
new file mode 100644
index 0000000..0f0ac10
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-med.jpg
new file mode 100644
index 0000000..3c7618a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-thumb.jpg
new file mode 100644
index 0000000..e765076
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-med.jpg
new file mode 100644
index 0000000..7c7d897
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-thumb.jpg
new file mode 100644
index 0000000..4cdb8bb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-med.jpg
new file mode 100644
index 0000000..f38af83
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-thumb.jpg
new file mode 100644
index 0000000..bec9ee6
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/olie-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/olie-s.jpg
new file mode 100644
index 0000000..9bb9a17
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/olie-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/olie.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/olie.jpg
new file mode 100644
index 0000000..c91be8e
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/olie.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/paris-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/paris-s.jpg
new file mode 100644
index 0000000..f4ce9ec
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/paris-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/paris.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/paris.jpg
new file mode 100644
index 0000000..b599c76
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/paris.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/parrot-popcorn-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/parrot-popcorn-s.jpg
new file mode 100644
index 0000000..cae1408
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/parrot-popcorn-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/parrot-popcorn.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/parrot-popcorn.jpg
new file mode 100644
index 0000000..57e02ff
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/parrot-popcorn.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-blue-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-blue-med.jpg
new file mode 100644
index 0000000..758ed35
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-blue-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-blue-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-blue-thumb.jpg
new file mode 100644
index 0000000..3aec8c4
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-blue-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-med.jpg
new file mode 100644
index 0000000..13164b8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-thumb.jpg
new file mode 100644
index 0000000..fbd5412
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-white-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-white-thumb.jpg
new file mode 100644
index 0000000..148006d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peacock-white-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peakcock-white-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peakcock-white-med.jpg
new file mode 100644
index 0000000..f25a814
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/peakcock-white-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink-thumb.jpg
new file mode 100644
index 0000000..2d9c2b1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink.jpg
new file mode 100644
index 0000000..3573943
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink2-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink2-thumb.jpg
new file mode 100644
index 0000000..9be6e41
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink2-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink2.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink2.jpg
new file mode 100644
index 0000000..0559845
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/prehensile-tailed-skink2.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/princess-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/princess-s.jpg
new file mode 100644
index 0000000..d4521a3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/princess-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/princess.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/princess.jpg
new file mode 100644
index 0000000..370e4fd
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/princess.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/puppup-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/puppup-s.jpg
new file mode 100644
index 0000000..5b89061
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/puppup-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/puppup.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/puppup.jpg
new file mode 100644
index 0000000..efff187
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/puppup.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/purple-jellyfish-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/purple-jellyfish-med.jpg
new file mode 100644
index 0000000..93af55f
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/purple-jellyfish-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/purple-jellyfish-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/purple-jellyfish-thumb.jpg
new file mode 100644
index 0000000..d751856
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/purple-jellyfish-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rainbow-lorikeet-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rainbow-lorikeet-med.jpg
new file mode 100644
index 0000000..9c72270
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rainbow-lorikeet-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rainbow-lorikeet-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rainbow-lorikeet-thumb.jpg
new file mode 100644
index 0000000..9003e0c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rainbow-lorikeet-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/reptiles_icon.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/reptiles_icon.gif
new file mode 100644
index 0000000..0ee4c52
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/reptiles_icon.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/right.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/right.gif
new file mode 100644
index 0000000..89e7ba1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/right.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rita-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rita-s.jpg
new file mode 100644
index 0000000..16d1692
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rita-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rita.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rita.jpg
new file mode 100644
index 0000000..f183f1c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rita.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rockfish-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rockfish-med.jpg
new file mode 100644
index 0000000..005d708
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rockfish-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rockfish-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rockfish-thumb.jpg
new file mode 100644
index 0000000..e82c87d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/rockfish-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sabrina-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sabrina-s.jpg
new file mode 100644
index 0000000..508edb1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sabrina-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sabrina.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sabrina.jpg
new file mode 100644
index 0000000..870c2f3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sabrina.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-anemone-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-anemone-med.jpg
new file mode 100644
index 0000000..a18e30a
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-anemone-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-anemone-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-anemone-thumb.jpg
new file mode 100644
index 0000000..febadd3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-anemone-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-nettle-jellyfish-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-nettle-jellyfish-med.jpg
new file mode 100644
index 0000000..c7329f4
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-nettle-jellyfish-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-nettle-jellyfish-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-nettle-jellyfish-thumb.jpg
new file mode 100644
index 0000000..3753577
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/sea-nettle-jellyfish-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/seller-thumb-g.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/seller-thumb-g.jpg
new file mode 100644
index 0000000..a9c45e8
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/seller-thumb-g.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/seller-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/seller-thumb.jpg
new file mode 100644
index 0000000..2b7adf1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/seller-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/simba-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/simba-s.jpg
new file mode 100644
index 0000000..93e78ee
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/simba-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/simba.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/simba.jpg
new file mode 100644
index 0000000..cdbb5fb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/simba.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/splash.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/splash.gif
new file mode 100644
index 0000000..cdae47c
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/splash.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/spotted-jellyfish-med.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/spotted-jellyfish-med.jpg
new file mode 100644
index 0000000..6c1e407
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/spotted-jellyfish-med.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/spotted-jellyfish-thumb.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/spotted-jellyfish-thumb.jpg
new file mode 100644
index 0000000..991392d
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/spotted-jellyfish-thumb.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaicat-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaicat-s.jpg
new file mode 100644
index 0000000..49898fb
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaicat-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaicat.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaicat.jpg
new file mode 100644
index 0000000..eb43a52
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaicat.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaidog-s.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaidog-s.jpg
new file mode 100644
index 0000000..c918e36
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaidog-s.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaidog.jpg b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaidog.jpg
new file mode 100644
index 0000000..f5063e3
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/thaidog.jpg differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/uncheck_all.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/uncheck_all.gif
new file mode 100644
index 0000000..39fa7ba
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/uncheck_all.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/us_flag.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/us_flag.gif
new file mode 100644
index 0000000..52bc595
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/us_flag.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/zh_flag.gif b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/zh_flag.gif
new file mode 100644
index 0000000..0393bc1
Binary files /dev/null and b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/zh_flag.gif differ
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index-ajax.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index-ajax.jsp
new file mode 100644
index 0000000..9ce0b8d
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index-ajax.jsp
@@ -0,0 +1,239 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: index.jsp,v 1.17 2007/03/15 23:19:46 basler Exp $ --%>
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="java.util.*, com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Tag"%>
+
+<%
+try {
+ CatalogFacade cf = (CatalogFacade)config.getServletContext().getAttribute("CatalogFacade");
+ List<Tag> tags=cf.getTagsInChunk(0, 12);
+ // since top 20 come from database or desending refCount order, need to reorder by tag name
+ Collections.sort(tags, new Comparator() {
+ public int compare(Object one, Object two) {
+ int cc=((Tag)two).getTag().compareTo(((Tag)one).getTag());
+ return (cc < 0 ? 1 : cc > 0 ? -1 : 0);
+ }
+ });
+%>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
+ <title>Java Pet Store Reference Application</title>
+ <script type="text/javascript" src="./common.js"></script>
+ <link type="text/css" rel="stylesheet" href="./tag.css"/>
+ <script type="text/javascript">
+ //var djConfig = {isDebug: true };
+ </script>
+ </head>
+ <body>
+
+ <jsp:include page="banner.jsp" />
+ <script>
+ dojo.require("dojo.widget.FisheyeList");
+ dojo.require("dojo.io.*");
+ dojo.require("dojo.io.ScriptSrcIO");
+ //transport: "ScriptSrcTransport",
+ //url: "http://localhost:8080/petstore/downloadAd.json ",
+
+ function browse(category) {
+ window.location.href="${pageContext.request.contextPath}/faces/catalog.jsp?catid=" + category;
+
+ }
+
+
+ function debugProperties(namex) {
+ var listx="";
+ var ob=namex;
+ for(xx in ob) {
+ listx += xx + " = " + ob[xx] + "<br/>"
+ }
+ //document.write(listx);
+ alert(listx);
+ }
+
+ function checkAdPage() {
+ var bindArgs = {
+ //url: "https://blueprints.dev.java.net/petstore/downloadAd.json ",
+ //url: "http://localhost:8080/petstore/downloadAd.json ",
+ url: "http://search.yahooapis.com/ImageSearchService/V1/imageSearch?appid=Yahoo... ",
+ transport: "ScriptSrcTransport",
+ jsonParamName: "callback",
+ mimetype: "text/json",
+ load: function(type, data, event, kwArgs) {
+ /* type will be "load", data will be response data, event will null, and kwArgs are the keyword arguments used in the dojo.io.bind call. */
+ alert("load = " + data.ResultSet.totalResultsAvailable);
+ //debugProperties(data);
+ //document.getElementById("downloadAds").innerHTML=data.downloadxx;
+
+
+ },
+ error: function(type, data, event, kwArgs) {
+ /* type will be "error", data will be response data, event will null, and kwArgs are the keyword arguments used in the dojo.io.bind call. */
+ alert("error");
+ },
+ timeout: function() {
+ /* Called if there is a timeout */
+ alert("timeout");
+ },
+ timeoutSeconds: 10};
+ // dispatch the request
+ dojo.io.bind(bindArgs);
+ }
+
+ function callback() {
+ alert("callback");
+ }
+
+ function returnFunctionx(type, data, evt) {
+ // statically setup popup for simple case
+ // check return of the dojo call to make sure it is valid
+ if (evt.readyState == 4) {
+ if (evt.status == 200) {
+ alert("data = " + data.downloadxx);
+ //document.getElementById("downloadAds").innerHTML=data;
+ document.getElementById("downloadAds").innerHTML=data.downloadxx;
+ }
+ }
+ }
+
+ function testit() {
+ testx={download:"test", textx:"it"};
+ alert("test = " + testx.download);
+ }
+
+
+ </script>
+ <span onclick="checkAdPage();">test it</span>
+
+
+ <table bgcolor="white">
+ <tr>
+ <td valign="top">
+ <div class="outerbar" style="width: 200px">
+
+ <div dojoType="FisheyeList"
+ itemWidth="170" itemHeight="50"
+ itemMaxWidth="340" itemMaxHeight="100"
+ orientation="vertical"
+ effectUnits="2"
+ itemPadding="10"
+ attachEdge="top"
+ labelEdge="bottom"
+ enableCrappySvgSupport="false">
+
+ <div dojoType="FisheyeListItem" onClick="browse('Dogs');"
+ iconsrc="${pageContext.request.contextPath}/images/dogs_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Cats');"
+ iconsrc="${pageContext.request.contextPath}/images/cats_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Birds');"
+ iconsrc="${pageContext.request.contextPath}/images/birds_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Fish');"
+ iconsrc="${pageContext.request.contextPath}/images/fish_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Reptiles');"
+ iconsrc="${pageContext.request.contextPath}/images/reptiles_icon.gif">
+ </div>
+ </div>
+
+ </div>
+ </td>
+ <td valign="top" style="width: 400px">
+ <div id="bodyCenter">
+ <table valign="top" id="bodyTable" border="0">
+ <tr>
+ <td>
+ <map name="petmap">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Birds')"
+ alt="Birds"
+ coords="72,2,280,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Fish')"
+ alt="Fish"
+ coords="2,180,72,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Dogs')"
+ alt="Dogs"
+ coords="60,250,130,320">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Reptiles')"
+ alt="Reptiles"
+ coords="140,270,210,340">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Cats')"
+ alt="Cats"
+ coords="225,240,295,310">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Birds')"
+ alt="Birds"
+ coords="280,180,350,250">
+ </map>
+
+ <img src="${pageContext.request.contextPath}/images/splash.gif"
+ alt="Pet Selection Map"
+ usemap="#petmap"
+ width="350"
+ height="355"
+ border="0">
+ </td>
+ </tr>
+ </table>
+
+ </div>
+ </td>
+ <td style="vertical-align:top;">
+ <div style="border-style: double; width:100%;">
+ <table border="0">
+ <tr>
+ <th colspan="2" style="text-align:center">Most Popular Tags</th>
+ </tr>
+ <tr>
+<%
+ String style=null;
+ int refx=0, ii=0;
+ for(Tag tag : tags) {
+ refx=tag.getRefCount() / 5;
+ if(refx >= 3) {
+ style="xxlarge";
+ } else if(refx == 2) {
+ style="xlarge";
+ } else if(refx == 1) {
+ style="large";
+ } else {
+ style="medium";
+ }
+
+ if((ii % 2) == 0) out.println("</tr>\n<tr>");
+ out.println("<td class='tagCell' style='text-align: center'><a href='./tag.jsp?tag=" +
+ tag.getTag() + "'><span class='" + style +"'>" + tag.getTag() + "</span></a></td>");
+ ii++;
+ }
+%>
+ </tr>
+ </table>
+ </div>
+ </td>
+ <td valign="top" style="vertical-align:top; width:250px;">
+ <div id="downloadAds">
+ <jsp:include page="download.jsp" />
+ </div>
+ </td>
+ </tr>
+ </table>
+
+ <div style="position: absolute; visibility: hidden;z-index:5" id="menu-popup">
+ <table id="completeTable" class="popupTable" ></table>
+ </div>
+
+ <br/><br/>
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
+<%
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+%>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index.html b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index.html
new file mode 100644
index 0000000..8c5ca1b
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index.html
@@ -0,0 +1,117 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ <title>Java Pet Store Reference Application, 2.0 Early Access</title>
+</head>
+<body>
+<hr>
+<h1>Java Pet Store Reference Application, 2.0 Early Access</h1>
+<h2><a href="./faces/index.jsp">Enter the Store</a></h2>
+The Java Pet Store Reference Application is a sample application
+brought to
+you by the <a href="http://blueprints.dev.java.net/ ">Java BluePrints</a>
+program at <a href="http://sun.com ">Sun Microsystems</a>.
+This application is designed to illustrate how the Java EE 5 Platform
+can be used to develop an AJAX-enabled Web 2.0 application. The
+application comes with full source-code available under a
+BSD-style license, so you can experiment with it and use it in your own
+applications. <br>
+<br>
+<a href="#try">Try the Petstore Demo</a><br>
+<a href="#learn">Learn more about features in Java Petstore</a><br>
+<a href="#contributors">Show appreciation for Pet Store image
+contributors</a><br>
+<a href="#about">About BluePrints</a>
+<h2><a name="try"></a>Try the Pet Store Demo</h2>
+Now that you have the application deployed, you can use it and try out
+the features. You can browse the catalog of pets for sale, sell your
+own pets on the store, search for pets by location using Google maps,
+view the RSS news bar for BluePrints news, and more.<a
+ href="./faces/index.jsp">Enter the Store</a>
+<h2><a name="features"></a>Learn More About Features in Java Petstore</h2>
+<p>Here are some of the features of this application. For a detailed
+description of the features in the Java Pet
+Store Reference application, please refer to the article at <a
+ href="http://java.sun.com/developer/technicalArticles/J2EE/petstore/ ">http://java.sun.com/developer/technicalArticles/J2EE/petstore/ </a><a
+ href="http://java.sun.com/developer/technicalArticles/J2EE/petstore/ "></a><b>
+</b></p>
+<ol>
+ <li>Using AJAX for single-page interactive Web applications: The
+application is designed to be a single-page application where the user
+never leaves the page. Different sections of the page are dynamically
+loaded based on the user actions. These sections are loaded
+asynchronously to avoid any browser refreshes, and to give a richer
+interactive user-experience. </li>
+ <li>Mash-ups with Google maps: The petstore uses a mashup with
+Google's Map service, alongwith Yahoo's Geo-coder service to allow
+users to see the available pets in a neighborhood. </li>
+ <li>Community-created content: The application allows a user to add a
+pet for sale or adoption on the Website. The seller uploads </li>
+ <ol>
+ <li>Using Captchas to discourage spam in the community created
+content: Whenever a website allows its users to add content, it needs
+to build mechanisms to discourage placement of spurious content on its
+Website through automated mechanisms. We demonstrate how captchas can
+be used for this purpose. </li>
+ <li>Community rated content: Each item in the petstore website can
+be rated by the users </li>
+ <li>Payments through PayPal: The application provides a meeting
+ground for
+buyers and sellers of pets. The application uses the PayPal service to
+allow sellers to accept payments.</li>
+ </ol>
+ <li>Integration of an RSS feed: The website integrates an RSS feed of
+news items coming out the Java BluePrints website. The </li>
+ <li>Integration of a search engine: The application integrates
+Apache Lucene search engine to handle all website searches. </li>
+</ol>
+This application also demonstrate the use of various features of
+the Java EE 5 platform such as: <br>
+<ol>
+ <li>JavaServer Faces: Many of the AJAX features are implemented as
+reusable JavaServer Faces components. </li>
+ <li>Java Persistence API: The application uses Java Persistence APIs
+to create an object/relational mapping layer. </li>
+ <li>Dependency Injection: The application uses dependency injection
+instead of deployment descriptors.</li>
+</ol>
+See the <a
+ href="https://blueprints.dev.java.net/petstore/architecture.html ">Pet
+Store Architecure document</a> for more detail.
+<h2><a name="contributors"></a>Show Appreciation for Pet Store Image
+Contributors</h2>
+<p>For many images in the Java Petstore, some organizations and people
+were kind enough to give us permission to photograph their animals or
+even give us photos to use in the Java Petstore. See the <a
+ href="https://blueprints.dev.java.net/petstore/imagecontributors.html ">
+image contributors </a> page for a more detail on these friends of the
+animals.
+</p>
+<h2><a name="about"></a>About Java BluePrints</h2>
+<p>The Java BluePrints program defines the application programming
+model for the Java EEâ„¢ platform. It provides best practice guidelines
+and
+architectural recommendations for real-world application scenarios to
+enable developers to build portable, scalable, and robust applications
+using the Java EE technologies.<br>
+<br>
+Some other popular projects from Java BluePrints are <a
+ href="http://blueprints.dev.java.net/bpcatalog/ ">Java BluePrints
+Solutions Catalog</a>, <a target="_blank"
+ href="https://blueprints.dev.java.net/adventurebuilder/ ">Java
+Adventure Builder Reference</a> application, <a target="_blank"
+ href="http://java.sun.com/blueprints/guidelines/designing_webservices/ ">Designing
+Web Services with the J2EE(TM) 1.4 Platform : JAX-RPC, SOAP, and XML
+Technologies</a> book, and the <a target="_blank"
+ href="http://java.sun.com/blueprints/guidelines/designing_enterprise_applicatio... "><span
+ class="body"><span class="title">Designing
+Enterprise Applications with the J2EE Platform, Second Edition</span></span></a>
+book. You can access these projects and other content from Java
+BluePrints by visiting the <a target="_blank"
+ href="http://java.sun.com/reference/blueprints/index.html ">Java
+BluePrints website</a>. </p>
+<hr noshade="noshade">Copyright © 2007 Sun Microsystems,
+Inc. All Rights Reserved.
+</body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index.jsp
new file mode 100644
index 0000000..ab59139
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index.jsp
@@ -0,0 +1,164 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: index.jsp,v 1.20 2007/03/16 20:18:59 basler Exp $ --%>
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="java.util.*, com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Tag"%>
+
+<%
+try {
+ CatalogFacade cf = (CatalogFacade)config.getServletContext().getAttribute("CatalogFacade");
+ List<Tag> tags=cf.getTagsInChunk(0, 12);
+ // since top 20 come from database or desending refCount order, need to reorder by tag name
+ Collections.sort(tags, new Comparator() {
+ public int compare(Object one, Object two) {
+ int cc=((Tag)two).getTag().compareTo(((Tag)one).getTag());
+ return (cc < 0 ? 1 : cc > 0 ? -1 : 0);
+ }
+ });
+%>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
+ <title>Java Pet Store Reference Application</title>
+ <link type="text/css" rel="stylesheet" href="./tag.css"/>
+ </head>
+ <body>
+
+ <jsp:include page="banner.jsp" />
+ <script>
+ dojo.require("dojo.widget.FisheyeList");
+ function browse(category) {
+ window.location.href="${pageContext.request.contextPath}/faces/catalog.jsp?catid=" + category;
+ }
+ </script>
+ <table bgcolor="white">
+ <tr>
+ <td valign="top">
+ <div class="outerbar" style="width: 200px">
+
+ <div dojoType="FisheyeList"
+ itemWidth="170" itemHeight="50"
+ itemMaxWidth="340" itemMaxHeight="100"
+ orientation="vertical"
+ effectUnits="2"
+ itemPadding="10"
+ attachEdge="top"
+ labelEdge="bottom"
+ enableCrappySvgSupport="false">
+
+ <div dojoType="FisheyeListItem" onClick="browse('Dogs');"
+ iconsrc="${pageContext.request.contextPath}/images/dogs_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Cats');"
+ iconsrc="${pageContext.request.contextPath}/images/cats_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Birds');"
+ iconsrc="${pageContext.request.contextPath}/images/birds_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Fish');"
+ iconsrc="${pageContext.request.contextPath}/images/fish_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Reptiles');"
+ iconsrc="${pageContext.request.contextPath}/images/reptiles_icon.gif">
+ </div>
+ </div>
+
+ </div>
+ </td>
+ <td valign="top" style="width: 400px">
+ <div id="bodyCenter">
+ <table valign="top" id="bodyTable" border="0">
+ <tr>
+ <td>
+ <map name="petmap">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Birds')"
+ alt="Birds"
+ coords="72,2,280,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Fish')"
+ alt="Fish"
+ coords="2,180,72,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Dogs')"
+ alt="Dogs"
+ coords="60,250,130,320">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Reptiles')"
+ alt="Reptiles"
+ coords="140,270,210,340">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Cats')"
+ alt="Cats"
+ coords="225,240,295,310">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Birds')"
+ alt="Birds"
+ coords="280,180,350,250">
+ </map>
+
+ <img src="${pageContext.request.contextPath}/images/splash.gif"
+ alt="Pet Selection Map"
+ usemap="#petmap"
+ width="350"
+ height="355"
+ border="0">
+ </td>
+ </tr>
+ </table>
+
+ </div>
+ </td>
+ <td style="vertical-align:top;">
+ <div style="border-style: double; width:100%;">
+ <table border="0">
+ <tr>
+ <th colspan="2" style="text-align:center">Most Popular Tags</th>
+ </tr>
+ <tr>
+<%
+ String style=null;
+ int refx=0, ii=0;
+ for(Tag tag : tags) {
+ refx=tag.getRefCount() / 5;
+ if(refx >= 3) {
+ style="xxlarge";
+ } else if(refx == 2) {
+ style="xlarge";
+ } else if(refx == 1) {
+ style="large";
+ } else {
+ style="medium";
+ }
+
+ if((ii % 2) == 0) out.println("</tr>\n<tr>");
+ out.println("<td class='tagCell' style='text-align: center'><a href='./tag.jsp?tag=" +
+ tag.getTag() + "'><span class='" + style +"'>" + tag.getTag() + "</span></a></td>");
+ ii++;
+ }
+%>
+ </tr>
+ </table>
+ </div>
+ </td>
+ <td style="vertical-align:top; width:300px; text-align:right;">
+ <div id="downloadAds">
+ <jsp:include page="download.jsp" />
+ </div>
+ </td>
+ </tr>
+ </table>
+
+ <div style="position: absolute; visibility: hidden;z-index:5" id="menu-popup">
+ <table id="completeTable" class="popupTable" ></table>
+ </div>
+
+ <br/><br/>
+ <jsp:include page="footer.jsp" />
+
+ </body>
+</html>
+<%
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+%>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index_a.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index_a.jsp
new file mode 100644
index 0000000..54f30ce
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/index_a.jsp
@@ -0,0 +1,194 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: index.jsp,v 1.18 2007/03/16 15:29:15 basler Exp $ --%>
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="java.util.*, com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Tag"%>
+
+<%
+try {
+ CatalogFacade cf = (CatalogFacade)config.getServletContext().getAttribute("CatalogFacade");
+ List<Tag> tags=cf.getTagsInChunk(0, 12);
+ // since top 20 come from database or desending refCount order, need to reorder by tag name
+ Collections.sort(tags, new Comparator() {
+ public int compare(Object one, Object two) {
+ int cc=((Tag)two).getTag().compareTo(((Tag)one).getTag());
+ return (cc < 0 ? 1 : cc > 0 ? -1 : 0);
+ }
+ });
+%>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
+ <title>Java Pet Store Reference Application</title>
+ <link type="text/css" rel="stylesheet" href="./tag.css"/>
+ <script type="text/javascript" src="https://blueprints.dev.java.net/petstore/downloadAd.js "></script>
+ </head>
+ <body onload="alterDownloadAd()">
+
+ <jsp:include page="banner.jsp" />
+ <script>
+ dojo.require("dojo.widget.FisheyeList");
+ function browse(category) {
+ window.location.href="${pageContext.request.contextPath}/faces/catalog.jsp?catid=" + category;
+ }
+
+ function alterDownloadAd() {
+ if(typeof checkAdPage != "undefined") {
+ var textx=checkAdPage();
+ if(typeof textx != "undefined") {
+ document.getElementById("downloadAds").innerHTML=textx;
+ }
+ }
+ }
+
+
+ </script>
+ <table bgcolor="white">
+ <tr>
+ <td valign="top">
+ <div class="outerbar" style="width: 200px">
+
+ <div dojoType="FisheyeList"
+ itemWidth="170" itemHeight="50"
+ itemMaxWidth="340" itemMaxHeight="100"
+ orientation="vertical"
+ effectUnits="2"
+ itemPadding="10"
+ attachEdge="top"
+ labelEdge="bottom"
+ enableCrappySvgSupport="false">
+
+ <div dojoType="FisheyeListItem" onClick="browse('Dogs');"
+ iconsrc="${pageContext.request.contextPath}/images/dogs_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Cats');"
+ iconsrc="${pageContext.request.contextPath}/images/cats_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Birds');"
+ iconsrc="${pageContext.request.contextPath}/images/birds_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Fish');"
+ iconsrc="${pageContext.request.contextPath}/images/fish_icon.gif">
+ </div>
+
+ <div dojoType="FisheyeListItem" onClick="browse('Reptiles');"
+ iconsrc="${pageContext.request.contextPath}/images/reptiles_icon.gif">
+ </div>
+ </div>
+
+ </div>
+ </td>
+ <td valign="top" style="width: 400px">
+ <div id="bodyCenter">
+ <table valign="top" id="bodyTable" border="0">
+ <tr>
+ <td>
+ <map name="petmap">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Birds')"
+ alt="Birds"
+ coords="72,2,280,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Fish')"
+ alt="Fish"
+ coords="2,180,72,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Dogs')"
+ alt="Dogs"
+ coords="60,250,130,320">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Reptiles')"
+ alt="Reptiles"
+ coords="140,270,210,340">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Cats')"
+ alt="Cats"
+ coords="225,240,295,310">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="browse('Birds')"
+ alt="Birds"
+ coords="280,180,350,250">
+ </map>
+
+ <img src="${pageContext.request.contextPath}/images/splash.gif"
+ alt="Pet Selection Map"
+ usemap="#petmap"
+ width="350"
+ height="355"
+ border="0">
+ </td>
+ </tr>
+ </table>
+
+ </div>
+ </td>
+ <td style="vertical-align:top;">
+ <div style="border-style: double; width:100%;">
+ <table border="0">
+ <tr>
+ <th colspan="2" style="text-align:center">Most Popular Tags</th>
+ </tr>
+ <tr>
+<%
+ String style=null;
+ int refx=0, ii=0;
+ for(Tag tag : tags) {
+ refx=tag.getRefCount() / 5;
+ if(refx >= 3) {
+ style="xxlarge";
+ } else if(refx == 2) {
+ style="xlarge";
+ } else if(refx == 1) {
+ style="large";
+ } else {
+ style="medium";
+ }
+
+ if((ii % 2) == 0) out.println("</tr>\n<tr>");
+ out.println("<td class='tagCell' style='text-align: center'><a href='./tag.jsp?tag=" +
+ tag.getTag() + "'><span class='" + style +"'>" + tag.getTag() + "</span></a></td>");
+ ii++;
+ }
+%>
+ </tr>
+ </table>
+ </div>
+ </td>
+ <td style="vertical-align:top; width:250px; text-align:right;">
+ <div id="downloadAds">
+ <div id="downloadAds" style="text-align:center; border-style:none; width:100%;">
+ <table style="width:100%">
+ <tr>
+ <td style="text-align:center;">
+ <a href="http://java.sun.com/javaee/downloads/index.jsp " target="downloads"><img style="border:none" src="./images/ad-sdk.jpg" alt="Download Java EE 5 SDK"/></a>
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align:center;">
+ <a href="http://www.netbeans.org/downloads/index.html " target="downloads"><img style="border:none" src="./images/ad-netbeans.jpg" alt="Download Netbeans IDE"/></a>
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align:center;">
+ <a href="http://java.com/en/download/index.jsp " target="downloads"><img style="border:none" src="./images/ad-jre.jpg" alt="Download Java SE"/></a>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </div>
+ </td>
+ </tr>
+ </table>
+
+ <div style="position: absolute; visibility: hidden;z-index:5" id="menu-popup">
+ <table id="completeTable" class="popupTable" ></table>
+ </div>
+
+ <br/><br/>
+ <jsp:include page="footer.jsp" />
+
+ </body>
+</html>
+<%
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+%>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/jsonTest.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/jsonTest.jsp
new file mode 100644
index 0000000..d2fd4c5
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/jsonTest.jsp
@@ -0,0 +1,53 @@
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core " %>
+<%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt " %>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>JSON Test Page</title>
+ <script type="text/javascript" src="${pageContext.request.contextPath}/faces/static/META-INF/dojo/bpcatalog/dojo.js"></script>
+
+ <script type="text/javascript">
+ function getJSON() {
+ // get data and send to controller servlet
+ var bindArgs = {
+ url: "${pageContext.request.contextPath}/catalog?command=items&pid=feline01&start=0&length=2&format=json",
+ mimetype: "text/json",
+ error: function(){ alert("error")},
+ load: callbackx
+ };
+
+ dojo.io.bind(bindArgs);
+ }
+
+ function callbackx(type, data, evt) {
+ // check successful response
+ if (evt.readyState == 4) {
+ if (evt.status == 200) {
+ var prodsx=data.products;
+ rep="Products:<br\>";
+ for(ii=0; ii < prodsx.length; ii++) {
+ rep += prodsx[ii].name + "<br/>";
+ }
+ rep+="<br\>";
+ document.getElementById("testResult").innerHTML=rep;
+ }
+ }
+ }
+
+ </script>
+
+ </head>
+ <body>
+
+ <h1>JSON Test Page</h1>
+ <span onclick="getJSON();"> GET DATA </span><br/><br/>
+
+ <div id="testResult">
+ This should be populated with result. If not, look at the error console for errors.
+ </div>
+
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/lookup.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/lookup.jsp
new file mode 100644
index 0000000..b634b42
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/lookup.jsp
@@ -0,0 +1,36 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: lookup.jsp,v 1.7 2007/01/19 21:47:31 basler Exp $ --%>
+
+<%@page contentType="text/xml"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Item"%>
+
+<%
+ String itemId=request.getParameter("itemId");
+ String popupView=request.getParameter("popupView");
+
+ try {
+ ServletContext context=config.getServletContext();
+ CatalogFacade cf=(CatalogFacade)context.getAttribute("CatalogFacade");
+ Item item=cf.getItem(itemId);
+
+ if(itemId != null) {
+ out.println("<response>");
+ out.println("<name>" + item.getName() + "</name>");
+ String tmp=null;
+ if(popupView != null && popupView.equals("2")) {
+ tmp=item.getAddress().addressToString();
+ } else {
+ tmp=item.getDescription();
+ }
+ out.println("<description><![CDATA[" + tmp + "]]></description>");
+ out.println("<price>" + java.text.NumberFormat.getCurrencyInstance(java.util.Locale.US).format(item.getPrice()) + "</price>");
+ out.println("<image>" + request.getContextPath() + "/ImageServlet/" + item.getImageThumbURL() + "</image>");
+ out.println("</response>");
+ out.flush();
+ }
+ } catch(Exception ee) {
+ ee.printStackTrace();
+ }
+
+%>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/main.htmf b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/main.htmf
new file mode 100644
index 0000000..b207a5a
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/main.htmf
@@ -0,0 +1,36 @@
+<!-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: main.htmf,v 1.3 2006/05/03 22:00:33 inder Exp $ -->
+
+ <table valign="top" id="bodyTable" border="0">
+ <tr>
+ <td>
+ <map name="petmap">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="loadCategory('BIRDS')"
+ alt="Birds"
+ coords="72,2,280,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="loadCategory('FISH')"
+ alt="Fish"
+ coords="2,180,72,250">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="loadCategory('DOGS')"
+ alt="Dogs"
+ coords="60,250,130,320">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="loadCategory('REPTILES')"
+ alt="Reptiles"
+ coords="140,270,210,340">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="loadCategory('CATS')"
+ alt="Cats"
+ coords="225,240,295,310">
+ <area onmouseover="javascript:this.style.cursor='pointer';" onclick="loadCategory('BIRDS')"
+ alt="Birds"
+ coords="280,180,350,250">
+ </map>
+
+ <img src="images/splash.gif"
+ alt="Pet Selection Map"
+ usemap="#petmap"
+ width="350"
+ height="355"
+ border="0">
+ </td>
+ </tr>
+ </table>
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/main.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/main.js
new file mode 100644
index 0000000..b8de8fc
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/main.js
@@ -0,0 +1,21 @@
+/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: main.js,v 1.9 2006/05/03 22:00:33 inder Exp $ */
+
+var isIE;
+var bodyRowText;
+
+dojo.require("dojo.widget.FisheyeList");
+init();
+
+function browse(category) {
+ window.location.href="catalog.jsp?catid=" + category;
+}
+
+function loadPetstore() {
+ init();
+ showMain();
+}
+
+function init() {
+ if (navigator.userAgent.indexOf("IE") != -1) isIE = true;
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/map.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/map.jsp
new file mode 100644
index 0000000..c2673c9
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/map.jsp
@@ -0,0 +1,143 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: map.jsp,v 1.20 2006/11/02 00:34:49 basler Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Item, com.sun.javaee.blueprints.petstore.mapviewer.MapBean, com.sun.javaee.blueprints.components.ui.mapviewer.MapMarker"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>Map Display</title>
+ </head>
+ <body>
+ <jsp:include page="banner.jsp" />
+ <br>
+ <center>
+ <table border="1" cellspacing="5px" cellpadding="5px"
+ style="border-style:double; border-color:darkgreen; padding:5px">
+ <tr>
+ <td valign="top" align="center" width="200px">
+ <table border="0">
+ <c:if test="${!empty sessionScope.MapBean.locations}">
+ <tr>
+ <th>
+ <u>${sessionScope.MapBean.locationCount} Items Displayed</u>
+ </th>
+ </tr>
+ <tr>
+ <td>
+ <ul>
+<%
+ try {
+ // need to use scriptlet to preform the reconciliation of items to map coords
+ // this way I don't have to create a new wrapper object
+ MapBean mapBean=(MapBean)session.getAttribute("MapBean");
+ MapMarker[] mapMarkers=(MapMarker[])mapBean.getLocations();
+ java.util.List<Item> items=mapBean.getItems();
+ Item itemxx=null;
+ String popupOptions=null;
+ for(int ii=0; ii < mapMarkers.length; ii++) {
+
+ //System.out.println("loop - " + ii + " - " + mapBean.getCenterAddress());
+ if(mapBean.getCenterAddress() != null && !mapBean.getCenterAddress().equals("")) {
+ // center point is set to the first mapMarker, items are off by one
+ if(ii > 0) {
+ // reconcile correct mapMarkers with items list
+ itemxx=items.get(ii - 1);
+ popupOptions="onmouseover=\"bpui.popup.show('pop1', event, '" + itemxx.getItemID() + "')\" onmouseout=\"bpui.popup.hide('pop1')\"";
+ } else {
+ // first item of mapMarker is centerpoint, so no corresponding item, also no popup on mouseover
+ itemxx=null;
+ popupOptions="";
+ }
+ } else {
+ // no center point items should be 1-to-1 with mappedMarkers
+ itemxx=items.get(ii);
+ popupOptions="onmouseover=\"bpui.popup.show('pop1', event, '" + itemxx.getItemID() + "')\" onmouseout=\"bpui.popup.hide('pop1')\"";
+ }
+%>
+ <li>
+ <a href="javascript:mapViewerx.openInfoWindowHtml(new GPoint(<%= mapMarkers[ii].getLongitude() %>,<%= mapMarkers[ii].getLatitude() %>), '<%= mapMarkers[ii].getMarkup() %>');" <%= popupOptions %>>
+ <%= mapBean.changeSpaces((itemxx == null) ? mapMarkers[ii].getMarkup() : "<b>" + itemxx.getName() + "</b>") %>
+ </a>
+<%
+ if(itemxx != null) {
+ // remove these links for center point entry
+%>
+ <a href="${pageContext.request.contextPath}/faces/catalog.jsp?pid=<%= itemxx.getProductID() %>&itemId=<%= itemxx.getItemID() %>" alt="Go to Detailed Catalog Page">
+ <i>(detail)</i>
+ </a>
+
+ <br/>
+ <a href="javascript:mapViewerx.openInfoWindowHtml(new GPoint(<%= mapMarkers[ii].getLongitude() %>, <%= mapMarkers[ii].getLatitude() %>), '<%= mapMarkers[ii].getMarkup() %>');" <%= popupOptions %>>
+ <font size="-1"><%= mapBean.changeSpaces((itemxx == null) ? mapMarkers[ii].getMarkup() : itemxx.getAddress().addressToString()) %></font>
+ </a>
+<%
+ }
+%>
+ </li>
+ <%
+ }
+ } catch(Exception ee) {
+ ee.printStackTrace();
+
+ }
+ %>
+ </ul>
+ <td>
+ </tr>
+ </c:if>
+ </table>
+ </td>
+ <td valign="top">
+ <f:view>
+ <ui:popupTag id="pop1" xmlHttpRequestURL="../lookup.jsp?itemId="
+ elementNamePairs="name=value1,description=value2,price=value3,image=imageId">
+ <!-- Used as spaces to center the table, this could be done programmatically,
+ but browser diff, so I left it in the hands of the component user. The image is located
+ in the component jar so for retrieval, push it through the faces servlet -->
+ <img id="spaceImage" height="10px" width="12px" src="${pageContext.request.contextPath}/faces/static/META-INF/popup/images/spacer.gif" align="left">
+ <table border="0" width="270px" bgcolor="#ffffff" cellpadding="5" cellspacing="5">
+ <tr>
+ <td align="left" valign="top"><b>Name:</b>
+ <span id="value1">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td align="left" valign="top"><b>Description:</b>
+ <span id="value2">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td align="left" valign="top"><b>Price:</b>
+ <span id="value3">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"><img name="image" id="imageId" src=""
+ alt="[Loading Image...]" border="2"/><br/><br/></td>
+ </tr>
+ </table>
+ </ui:popupTag>
+
+
+ <ui:mapViewer id="mapViewerx" center="#{MapBean.mapPoint}" info="#{MapBean.mapMarker}"
+ markers="#{MapBean.locations}" zoomLevel="#{MapBean.zoomLevel}" style="height: 500px; width: 700px"/>
+
+ </f:view>
+ </td>
+ </tr>
+ </table>
+ <script type="text/javascript">
+ bpui.mapviewer.createMapControl = function() {
+ return new GLargeMapControl();
+ }
+
+ </script>
+ <br/><br/>
+ </center>
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/mapAll.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/mapAll.jsp
new file mode 100644
index 0000000..a3ae6dc
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/mapAll.jsp
@@ -0,0 +1,65 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: mapAll.jsp,v 1.14 2006/12/06 22:44:37 basler Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>Map Viewer Page</title>
+ </head>
+ <body>
+ <jsp:include page="banner.jsp" />
+ <center>
+ <f:view>
+
+ <h:form id="form1">
+ <table border="1" cellpadding="5" cellspacing="5" style="border-style:double; width:600px; border-color:darkgreen; padding:5px">
+ <tr>
+ <td colspan=3>
+ <i>Select the category whose items will be displayed in a Google map based on the Seller's address.
+ Optionally, enter a "Center Point Address" and "Area" to limit the search to a specific
+ area around the center point.</i>
+ </td>
+ </tr>
+ <tr>
+ <th align="right">Select Category to Map:</th>
+ <td align="center" colspan=2>
+ <h:selectOneRadio value="#{MapBean.category}" required="true">
+ <f:selectItems value="#{MapBean.categories}"/>
+ </h:selectOneRadio>
+ </td>
+ </tr>
+ <tr>
+ <th align="right">Center Point Address:</th>
+ <td>
+ <h:inputText id="centerAddress" value="#{MapBean.centerAddress}" size="70"/>
+ <br/><small><i>For example: 4140 Network Circle, Santa Clara, CA, 95054</i></small>
+ </td>
+ </tr>
+ <tr>
+ <th align="right">Area (in Miles):</th>
+ <td>
+ <h:inputText id="radius" value="#{MapBean.radius}" size="5"/>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center">
+ <h:commandButton action="#{MapBean.findAllByCategory}" id="submitCat" type="submit" value="Map Category"/>
+ </td>
+ </tr>
+
+ </table>
+ <h:messages/>
+ </h:form>
+ </f:view>
+
+ </center>
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/news.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/news.js
new file mode 100644
index 0000000..5bcac34
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/news.js
@@ -0,0 +1,190 @@
+
+dojo.require("dojo.io.*");
+dojo.require("dojo.event.*");
+
+var bpuinews;
+if (typeof bpuinews == "undefined") {
+ bpuinews = new Object();
+}
+
+bpuinews.RSS = function() {
+ var currentItem = 0;
+ var limitCharNum = 75;
+ var itemNum=0;
+ var rssData = null;
+ var prev;
+ var next;
+ var prevHit=false;
+
+ this.getRssInJson = function (method, uri) {
+ prev = document.getElementById("previous");
+ next = document.getElementById("next");
+ dojo.event.connect(prev, "onclick", function(evt) {showPrevious();});
+ dojo.event.connect(next, "onclick", function (evt) {showNext();});
+ prev.disabled=true;
+
+ var encodedURI = encodeURI(method + "?style=json&itemCount=0&url="+uri);
+ var bindArgs = {
+ url: encodedURI,
+ mimetype: "text/json",
+ load: function (type, data, http) {
+ handleJsonRss(data);
+ },
+ error: function (t, e) {
+ dojo.debug("ERROR : " + e.message);
+ }
+ }
+ dojo.io.bind(bindArgs);
+ return false;
+ }
+
+ function handleJsonRss(json) {
+ rssData = json;
+ itemNum = json.channel.item.length;
+ showNext();
+ }
+
+ function createUl(skip) {
+ var i;
+ var cp="<ul>\n";
+ for (i = currentItem; i<currentItem + skip; i++) {
+ cp += "<li><b>"+decodeURL(rssData.channel.item[i].title)+"</b>\n";
+ cp += "<p>" + decodeURL(rssData.channel.item[i].description) + "</p>\n</li>\n";
+ }
+ cp += "</ul>\n";
+ return cp;
+ }
+
+ // Following funcs(showNext, showPrevious) should be connected to the button
+ // by dojo.event.connect.
+ function showNext() {
+ var skip = 5;
+ if (prevHit) {
+ currentItem = currentItem + skip;
+ prevHit = false;
+ }
+ var nextCurrentItem = currentItem + skip;
+ if (nextCurrentItem >= itemNum) {
+ skip = itemNum - currentItem;
+ // deactivate "next" button
+ next.disabled=true;
+ nextCurrentItem = currentItem;
+ }
+ // activate "previous" button
+ if (currentItem != 0) {
+ prev.disabled=false;
+ }
+ var cp = createUl(skip);
+ var elm = document.getElementById("news");
+ elm.innerHTML = cp;
+ currentItem = nextCurrentItem;
+ }
+
+ function showPrevious() {
+ prevHit = true;
+ var skip = 5;
+ currentItem = currentItem - skip;
+ if (currentItem <= 0) {
+ currentItem = 0;
+ // deactivate "previous" button
+ prev.disabled=true;
+ }
+ next.disabled=false;
+ var cp = createUl(skip);
+ var elm = document.getElementById("news");
+ elm.innerHTML = cp;
+ }
+
+
+ /* Compatible function to java.net.URLDecoder.decode().
+ * (decodeURI() is not compatible)
+ */
+ function decodeURL(str){
+ var targetStr="";
+ var s, tmpStr, unicode, f;
+ // take a look at every char in the source str
+ var i, j;
+ for (i = 0; i < str.length; i++) {
+ s = str.charAt(i);
+ // handle WS, which is the most common char
+ if (s == "+") {
+ targetStr += " ";
+ } else {
+ if (s != "%") {
+ // Non-encoded char
+ targetStr += s;
+ } else{
+ // encoding begin
+ unicode = 0; // uncode representation
+ f = 1; // flag to specify the escape sequence
+ while (true) {
+ tmpStr = "";
+ // get the two HEX chars and put that in the temp string. If no char, that is not a HEX.
+ for (j = 0; j < 2; j++ ) {
+ tmptmpStr = str.charAt(++i);
+ if (((tmptmpStr >= "0") && (tmptmpStr <= "9")) ||
+ ((tmptmpStr >= "a") && (tmptmpStr <= "f")) ||
+ ((tmptmpStr >= "A") && (tmptmpStr <= "F"))) {
+ tmpStr += tmptmpStr;
+ } else {
+ --i;
+ break;
+ }
+ }
+ /* parse the HEX
+ * <= 0x7f : Single byte
+ * >=0xc0 && <=0xdf : Two bytes
+ * >=0xe0 && <=0xef : Three bytes
+ * >=0xf0 && <=0xf7 : Four bytes
+ * >=0x80 && <=0xbf : may not occur - just shift it
+ * <=1 : sequence terminated
+ */
+ var byte = parseInt(tmpStr, 16);
+ if (byte <= 0x7f) {unicode = byte; f = 1;}
+ if ((byte >= 0xc0) && (byte <= 0xdf)) {unicode = byte & 0x1f; f = 2;}
+ if ((byte >= 0xe0) && (byte <= 0xef)) {unicode = byte & 0x0f; f = 3;}
+ if ((byte >= 0xf0) && (byte <= 0xf7)) {unicode = byte & 0x07; f = 4;}
+ if ((byte >= 0x80) && (byte <= 0xbf)) {unicode = (unicode << 6) + (byte & 0x3f); --f;}
+ if (f <= 1) {
+ break;
+ }
+ if (str.charAt(i + 1) == "%") {
+ i++ ;
+ } else {
+ // Error. should not occur
+ break;
+ }
+ }
+ targetStr += String.fromCharCode(unicode);
+ }
+ }
+ }
+ return targetStr;
+ }
+
+ /* Cut the string at the WS so that it's shorter than the limitCharNum.
+ */
+ function cutStringatWs(str, limitCharNum) {
+ var tmpStr = str;
+ var cnum = 0;
+ while (true) {
+ cnum = tmpStr.lastIndexOf(" ");
+ // no occurance of WS
+ if (cnum < 0) {
+ // if str is still longer than limit
+ if (tmpStr.length >= limitCharNum) {
+ tmpStr = tmpStr.substring(0, limitCharNum);
+ }
+ break;
+ } else {
+ tmpStr = tmpStr.substring(0, cnum);
+ if (cnum <= limitCharNum) {
+ break;
+ }
+ }
+ }
+ return tmpStr;
+ }
+
+}
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/news.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/news.jsp
new file mode 100644
index 0000000..b57de0b
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/news.jsp
@@ -0,0 +1,51 @@
+<%-- Copyright 2006 Sun Microsystems, Inc.
+All rights reserved. You may not modify, use, reproduce, or distribute
+this software except in compliance with the terms of the License at:
+http://developer.sun.com/berkeley_license.html
+$Id: news.jsp,v 1.2 2006/12/14 01:04:50 yutayoshida Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>BluePrints News Page</title>
+ <script type="text/javascript" src="${pageContext.request.contextPath}/faces/static/META-INF/dojo/bpcatalog/dojo.js"></script>
+ <script type="text/javascript" src="${pageContext.request.contextPath}/news.js"></script>
+
+ <style>
+ p {
+ width : 70%;
+ background-color : #FFEFD5;
+ font-size : 80%
+ }
+ </style>
+
+ </head>
+ <script type="text/javascript">
+ var news = new bpuinews.RSS();
+ dojo.addOnLoad(function(){news.getRssInJson('${pageContext.request.contextPath}/faces/dynamic/bpui_rssfeedhandler/getRssfeed', 'https://blueprints.dev.java.net/servlets/ProjectRSS?type=news ');});
+ </script>
+ <body>
+ <jsp:include page="banner.jsp" />
+ <h2><a href="http://blueprints.dev.java.net ">BluePrints News</a></h2>
+ <center>
+ <table border="0" width="95%">
+ <tr>
+ <td>
+ <button id="previous" type="button"><< Previous</button>
+ </td>
+ <td>
+ <button id="next" type="button">Next >></button>
+ </td>
+ </tr>
+ </table>
+ </center>
+ <div id="news"></div>
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/petstoreListTest.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/petstoreListTest.jsp
new file mode 100644
index 0000000..923739b
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/petstoreListTest.jsp
@@ -0,0 +1,21 @@
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>jsonp test page</title>
+ <link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/bp_petstorelist.css"></link>
+ <script type="text/javascript" src="${pageContext.request.contextPath}/bp_petstorelist.js"></script>
+ <script type="text/javascript">
+ var petstoreList;
+ function init() {
+ petstoreList=new bpui.petstoreList.createPetstoreList("petstoreListDiv");
+ }
+ </script>
+ </head>
+ <body onload="init()">
+ <h1>jsonp test page</h1>
+
+ <div id="petstoreListDiv"></div>
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rss.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rss.js
new file mode 100644
index 0000000..66700d3
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rss.js
@@ -0,0 +1,110 @@
+/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: rss.js,v 1.3 2006/05/31 19:13:03 basler Exp $ */
+
+dojo.require("dojo.io.*");
+
+if (bpui = 'undefined') {
+ bpui = new Object();
+}
+
+bpui.RSS = function() {
+ var jsonData = null;
+ var rssItemNum = 0;
+ var currentItem = 0;
+ var rssTimeout = null;
+ var itemIntervalMsec = 2000;
+ var rssFadeoutCounter = 110;
+ var rssFadeinCounter = 110;
+ var itemIntervalId = 0;
+
+ this.getRssInJson = function (uri, number) {
+ rssItemNum = number;
+ var encodedURI = encodeURI(bpui.contextRoot + "/faces/dynamic/bpui_rssfeedhandler/getRssfeed?style=json&itemNumber="+number+"&url="+uri);
+ //alert("encoded url=" + encodedURI);
+ var bindArgs = {
+ url: encodedURI,
+ mimetype: "text/json",
+ load: function (type, data, http) {
+ handleJsonRss(data);
+ for (var key in data.channel.item) {
+ dojo.debug("ITEM Title ", key, ":", data.channel.item[key].title);
+ dojo.debug("ITEM LInk ", key, ":", data.channel.item[key].link);
+ }
+ },
+ error: function (t, e) {
+ dj_debug("ERROR : " + e.message);
+ }
+ }
+ dojo.io.bind(bindArgs);
+ return false;
+ }
+
+ function handleJsonRss(json) {
+ jsonData = json;
+ // setting top title and link
+ generateHref(json.channel.title, json.channel.link, "rss-channel");
+ // setting items
+ generateHref(json.channel.item[0].title, json.channel.item[0].link, "rss-item");
+ var aNodes = document.getElementById("rss-item").getElementsByTagName("a");
+ dojo.event.connect(aNodes[0], "onmouseover", "pauseCycle");
+ dojo.event.connect(aNodes[0], "onmouseout", "resumeCycle");
+ cycleRss();
+ }
+
+ function generateHref (title, link, nodeId) {
+ var node = document.getElementById(nodeId);
+ var aNode = document.createElement("a");
+ aNode.setAttribute("href", link);
+ aNode.appendChild(document.createTextNode(title));
+ if (node.hasChildNodes()) {
+ node.removeChild(node.firstChild);
+ }
+ node.appendChild(aNode);
+ }
+
+ function cycleRss () {
+ itemIntervalId = setTimeout(replaceItem, itemIntervalMsec);
+ }
+
+
+ function replaceItem() {
+ if (itemIntervalId) {
+ clearTimeout(itemIntervalId);
+ }
+ // fadeout the current item and pop the next one in.
+ var cItem = document.getElementById("rss-item");
+ dojo.fx.html.fadeOut(cItem.getElementsByTagName('a')[0], 500);
+ var waitId = setTimeout(function(waitId) {
+ clearTimeout(waitId);
+ //cItem.removeChild(cItem.firstChild);
+ if (currentItem < (rssItemNum -1)) {
+ currentItem += 1;
+ } else {
+ currentItem = 0;
+ }
+ generateHref(jsonData.channel.item[currentItem].title, jsonData.channel.item[currentItem].link, "rss-item");
+ // attach event for onmouseover(pause) and onmouseout(resume)
+ var aNodes = cItem.getElementsByTagName("a");
+ dojo.event.connect(aNodes[0], "onmouseover", "pauseCycle");
+ dojo.event.connect(aNodes[0], "onmouseout", "resumeCycle");
+ cycleRss();}, 500);
+ }
+
+ function pauseCycle(evt) {
+ if (itemIntervalId) {
+ clearTimeout(itemIntervalId);
+ }
+ }
+
+ function resumeCycle (evt) {
+ cycleRss();
+ }
+
+ bpui.getContextRoot = function() {
+ var urlArray=window.location.toString().split("/", 4);
+ return "/" + urlArray[3];
+ }
+
+ bpui.contextRoot = bpui.getContextRoot();
+}
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rss.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rss.jsp
new file mode 100644
index 0000000..e57e4dc
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rss.jsp
@@ -0,0 +1,33 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: rss.jsp,v 1.2 2006/05/03 22:00:34 inder Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+
+<%@taglib prefix="f" uri="http://java.sun.com/jsf/core "%>
+<%@taglib prefix="h" uri="http://java.sun.com/jsf/html "%>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>RSS</title>
+ </head>
+ <body>
+
+ <h1>RSS test</h1>
+ <f:view>
+ <ui:rssreader>
+ <ui:rsscategory title="JavaEE 5">
+ <ui:rssfeed title="BluePrints" url="https://blueprints.dev.java.net/servlets/ProjectRSS?type=news "></ui:rssfeed>
+ <ui:rssfeed title="GlassFish" url="http://blogs.sun.com/roller/rss/theaquarium "></ui:rssfeed>
+ </ui:rsscategory>
+ <ui:rsscategory title="Yahoo!">
+ <ui:rssfeed title="World" url="http://rss.news.yahoo.com/rss/world "></ui:rssfeed>
+ <ui:rssfeed title="US" url="http://rss.news.yahoo.com/rss/us "></ui:rssfeed>
+ </ui:rsscategory>
+ </ui:rssreader>
+
+ </f:view>
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rssbar.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rssbar.jsp
new file mode 100644
index 0000000..6f9c2f9
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rssbar.jsp
@@ -0,0 +1,20 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: rssbar.jsp,v 1.7 2006/05/06 01:44:59 yutayoshida Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+
+<%@taglib prefix="f" uri="http://java.sun.com/jsf/core "%>
+<%@taglib prefix="h" uri="http://java.sun.com/jsf/html "%>
+<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
+
+
+
+ <f:view>
+ <ui:rssBar url="https://blueprints.dev.java.net/servlets/ProjectRSS?type=news "
+ itemCount="4"
+ title="News from BluePrints"
+ speed="6000"
+ backgroundImage="no"
+ color="#00ffff" hoverColor="#ff00ff"></ui:rssBar>
+ </f:view>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rteToolBar.html b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rteToolBar.html
new file mode 100644
index 0000000..9cc8c0a
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/rteToolBar.html
@@ -0,0 +1,60 @@
+<div class="EditorToolbarDomNode EditorToolbarSmallBg">
+ <table cellpadding="1" cellspacing="0" border="0">
+ <tbody>
+ <tr valign="top" align="left">
+ <td>
+ <!-- bold -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="bold">
+ <span title="Toggle Bold (Ctrl-B)" class="dojoE2TBIcon dojoE2TBIcon_Bold"> </span>
+ </span>
+ </td>
+ <td>
+ <!-- italic -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="italic">
+ <span title="Toggle Italic (Ctrl-I)" class="dojoE2TBIcon dojoE2TBIcon_Italic"> </span>
+ </span>
+ </td>
+ <td>
+ <!-- underline -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="underline">
+ <span title="Toggle Underline (Ctrl-U)" class="dojoE2TBIcon dojoE2TBIcon_Underline"> </span>
+ </span>
+ </td>
+ <td>
+ <!-- strikethrough -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="strikethrough">
+ <span title="Toggle Strike-Through"
+class="dojoE2TBIcon dojoE2TBIcon_StrikeThrough"> </span>
+ </span>
+ </td>
+ <td>
+ <!-- inserthorizontalrule -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="inserthorizontalrule">
+ <span title="Insert Horizontal Rule" class="dojoE2TBIcon dojoE2TBIcon_HorizontalLine "> </span>
+ </span>
+ </td>
+ <td isSpacer="true">
+ <!-- spacer -->
+ <span class="iconContainer">
+ <span class="dojoE2TBIcon dojoE2TBIcon_Sep" style="width: 5px; min-width: 5px;"></span>
+ </span>
+ </td>
+ <td>
+ <!-- forecolor -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="forecolor">
+ <span title="Change Text Color" class="dojoE2TBIcon dojoE2TBIcon_TextColor"
+unselectable="on"> </span>
+ </span>
+ </td>
+ <td>
+ <!-- hilitecolor -->
+ <span class="iconContainer dojoEditorToolbarItem" dojoETItemName="hilitecolor">
+ <span title="Change Background Color" class="dojoE2TBIcon dojoE2TBIcon_BackgroundColor"
+unselectable="on"> </span>
+ </span>
+ </td>
+ <td width="*"> </td>
+ </tr>
+ </tbody>
+ </table>
+</div>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/scroller.css b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/scroller.css
new file mode 100644
index 0000000..151df6d
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/scroller.css
@@ -0,0 +1 @@
+.slider {
border-width:1px;
border-style:solid;
border-color:black;
background:#404040;
}
.tile {
position: absolute;
top:0px;
left:0px;
cursor:pointer;
border-width:1px;
border-style:solid;
border-color:black;
visibility:hidden;
z-index:1;
background:white;
opacity: .99;
}
.tileImage {
width: 94;
height: 70;
}
.nav {
cursor:pointer;
position: absolute;
vertical-align:bottom;
z-index:11;
opacity: .85;
}
.infopane {
z-index:0;
width:475px;
position: absolute;
border-width:1px;
border-style:solid;
border-color:black;
background:black;
opacity: .65;
}
.infopaneDescription {
color:white;
font-size:12px;
}
.infopaneShortDescription {
color:white;
font-size:16px;
}
.infopanePrice {
color:white;
text-align: center;
height:20px;
}
.infopanePayPal{
vertical-valign: bottom;
text-align: right;
height:20px;
}
.infopaneRating{
vertical-valign: top;
text-align: center;
width:125px;
height:15px;
color:white;
opacity: .95;
}
.infopaneTitle {
width:255px;
height:15px;
color:white;
font-size:18px;
}
\ No newline at end of file
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/scroller.js b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/scroller.js
new file mode 100644
index 0000000..1f72578
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/scroller.js
@@ -0,0 +1,643 @@
+/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: scroller.js,v 1.32 2007/01/17 18:00:09 basler Exp $ */
+
+/**
+* ImageScroller - A multipurpose item brower
+* @ Author: Greg Murray
+*
+*/
+
+function getApplicationContextRoot() {
+ var urlArray=window.location.toString().split("/", 4);
+ return "/" + urlArray[3];
+}
+
+var applicationContextRoot=getApplicationContextRoot();
+
+
+function ImageScroller() {
+ var _this = this;
+ var initialized = false;
+ // default sizes
+
+ var VIEWPORT_WIDTH = 500;
+ // all sizes are realitive the the viewport width
+ var IMAGEPANE_WIDTH = VIEWPORT_WIDTH;
+ var IMAGEPANE_HEIGHT = Math.round(VIEWPORT_WIDTH / 1.49);
+ var INFOPANE_DEFAULT_HEIGHT = Math.round(VIEWPORT_WIDTH / 6.67);
+ var INFOPANE_EXPAND_HEIGHT = Math.round(VIEWPORT_WIDTH / 2.86);
+ var THUMB_WIDTH = Math.round(VIEWPORT_WIDTH / 5);;
+ var THUMB_HEIGHT = Math.round(VIEWPORT_WIDTH / 6.67);
+
+ var CHUNK_SIZE = 7;
+ var PREFETCH_THRESHHOLD = 5;
+
+ var IMAGE_PANE_ID = "imagePane";
+ var IMAGE_PANE_BUFFER_ID = "imageBufferPane";
+
+ var PADDING = 3;
+
+ var MINIMIZE_IMG_URI = applicationContextRoot + "/images/minimize.gif";
+ var MAXIMIZE_IMG_URI = applicationContextRoot + "/images/maximize.gif";
+ var INDICATOR_IMG_URI = applicationContextRoot + "/images/indicator-black.gif";
+ var MAXIMIZE_IMG_TOOLTIP = "Show Details";
+ var MINIMIZE_IMG_TOOLTIP = "Show Less Details";
+
+ // this is an array of the tiles which are divs for each thumb
+ var tiles = [];
+
+ var injectionPoint;
+
+ // for scrolling
+
+ var SCROLL_INCREMENT = 5;
+ var INFOPANE_INCREMENT = 3;
+ var tileY;
+ var tileX;
+ // this is the index of the image tile on the far left
+ var index = 0;
+ // keeps track how for the scroll has gone
+ var offset = 0;
+
+ var timeout = 30; // in ms
+ var isScrollingRight = false;
+ var isScrollingLeft = false;
+
+ // large image pane
+ var imagePane;
+ var imageLoadingPane;
+ var loadingPane;
+ // images
+ var minimizeImage;
+
+ var indicatorImage;
+ var leftButton;
+ var rightButton;
+
+ // infopane
+ var infoPane;
+ var infoTableMinimize;
+ var indicatorCell;
+ var minimizeLink;
+ var infoPaneLoop = 0;
+ var maximizing = false;
+ var minimizing = false;
+ var maximized = false;
+
+ // prefetch thresh-hold
+ var prefetchThreshold = 2;
+
+ // a growing list of items;
+ var items = [];
+ // cached chunks that are already in the items array
+ var loadedChunks = [];
+
+ // used for debugging when debug is true
+ var debug = false;
+ var statusDiv;
+ var status2Div;
+
+ var showingBuffer = false;
+ var imageBuffer;
+ var imageReloadTries = 0;
+ var IMG_RELOAD_RETRY_MAX = 30;
+ // used for url book marking
+
+
+ var pid;
+ var currentChunk;
+ // this map contains all the items
+ var map;
+ // this is the main container div
+ var containerDiv;
+
+ this.getItems = function() {
+ return map;
+ }
+
+ this.getScrollerItems = function() {
+ return items;
+ }
+
+
+ this.getGroupId = function() {
+ return pid;
+ }
+
+ this.reset = function() {
+ resetTitles()
+ tiles = [];
+ index = 0;
+ offset = 0;
+ currentChunk = 0;
+ items = [];
+ loadedChunks = [];
+ }
+
+ function resetTitles() {
+ for (var l = 0; l < tiles.length; l++) {
+ tiles[l].parentNode.removeChild(tiles[l]);
+ }
+ }
+
+ // event bound to the mouseOut event of both scroll buttons
+ function scrollDone() {
+ isScrollingLeft = false;
+ isScrollingRight = false;
+ }
+
+ // looping method for time out
+ function scroll() {
+ if (isScrollingRight) scrollRight();
+ else if (isScrollingLeft) scrollLeft();
+ }
+
+
+ // do the value list pre-emptive fetching
+ function prefetch() {
+ //printDebug("** scoller index = " + index);
+ if (isScrollingRight && (index + PREFETCH_THRESHHOLD) % CHUNK_SIZE == 0) {
+
+ if ((Math.round(index / CHUNK_SIZE)) >= currentChunk) {
+ currentChunk = Math.round(index / CHUNK_SIZE) + 1;
+ // fire an event
+ dojo.event.topic.publish("/catalog", {type:"getChunk", id: pid, index: index, currentChunk: currentChunk});
+ }
+ }
+ }
+
+ this.setGroupId = function(id) {
+ pid = id;
+ }
+
+ this.containsChunk = function(chunkId) {
+ printDebug("containsChunk = " + loadedChunks);
+ ret=false;
+ for(ii=0; ii < loadedChunks.length; ii++) {
+ if(chunkId == loadedChunks[ii]) {
+ ret=true;
+ break;
+ }
+ }
+ return ret;
+ }
+
+ this.addChunk = function(chunkId) {
+ loadedChunks.push(chunkId);
+ }
+
+ this.addItems = function(inItems) {
+ for (var loop=0; loop < inItems.length ; loop++) {
+ items.push(inItems[loop]);
+ map.put(inItems[loop].id, inItems[loop]);
+ createTile(inItems[loop]);
+ if (loop == 0 && !loadImage) {
+ showImage(inItems[loop].id);
+ }
+
+ }
+ drawTiles();
+ rightButton.style.visibility="visible";
+ _this.hideProgressIndicator();
+ }
+
+ this.showProgressIndicator = function() {
+ if (indicatorImage) {
+ indicatorImage.style.visibility = "visible";
+ }
+ }
+
+ this.hideProgressIndicator = function() {
+ indicatorImage.style.visibility = "hidden";
+ }
+
+ function postImageLoad(loadIntoBuffer) {
+ if (debug) {
+ status2Div.innerHTML = "Try " + imageReloadTries + " " + url + " image.complete=" + imageBuffer.complete;
+ }
+ // keep calling this funtion until imageReloadTries < IMG_RELOAD_RETRY_MAX
+ if (!imageBuffer.complete) {
+ if (imageReloadTries < IMG_RELOAD_RETRY_MAX) {
+ setTimeout(function(){this.loadIntoBuffer = loadIntoBuffer;postImageLoad(loadIntoBuffer);},500);
+ } else {
+ this.hideProgressIndicator();
+ }
+ imageReloadTries = imageReloadTries + 1;
+ return;
+ }
+ var id;
+
+ _this.hideProgressIndicator();
+ if (loadIntoBuffer) {
+ imageLoadingPane.src = imageBuffer.src;
+ } else {
+ imagePane.src = imageBuffer.src;
+
+ }
+ // do a cross fade as long as the images aren't the same
+ if (imageLoadingPane.src != imagePane.src) {
+ crossFade(0,loadIntoBuffer );
+ }
+ }
+
+
+ this.showImage = function(itemId) {
+
+ _this.showProgressIndicator();
+ //setTimeout(this.showProgressIndicator,0);
+ var i = map.get(itemId);
+
+ if (!i) {
+ return;
+ }
+ dojo.event.topic.publish("/catalog", {type:"showingItem", id: itemId, rating: i.rating});
+ // create the image pane and append the description nodes
+ // asumption is that if the imagePane is not set neigher are the info children
+ if (typeof imagePane == 'undefined') {
+ imagePane = document.createElement("img");
+ imagePane.style.width = IMAGEPANE_WIDTH + "px";
+ imagePane.style.height = IMAGEPANE_HEIGHT + "px";
+ imagePane.id = IMAGE_PANE_ID;
+
+ var targetElement = document.getElementById("bodySpace");
+ imageLoadingPane = document.createElement("img");
+ imageLoadingPane.style.position = "absolute";
+ imageLoadingPane.style.visibility = "hidden";
+ imageLoadingPane.style.width = IMAGEPANE_WIDTH + "px";
+ imageLoadingPane.style.height = IMAGEPANE_HEIGHT + "px";
+ imageLoadingPane.id = IMAGE_PANE_BUFFER_ID;
+ targetElement.appendChild(imagePane);
+ targetElement.appendChild(imageLoadingPane);
+ imageLoadingPane.style.left = tileX + "px";
+
+ loadImage(i.image, false);
+ } else {
+ imageLoadingPane.style.visibility = "visible";
+ if (showingBuffer) {
+ showingBuffer = false;
+ } else {
+ showingBuffer = true;
+ }
+ loadImage(i.image, showingBuffer);
+ }
+ }
+
+ function loadImage(url, loadIntoBuffer) {
+ imageReloadTries = 0;
+ imageBuffer = new Image();
+ if (loadIntoBuffer) {
+ imageBuffer.src = url;
+ imageLoadingPane.onLoad = setTimeout(function(){this.url=url;this.loadIntoBuffer = loadIntoBuffer;postImageLoad(loadIntoBuffer,url);},0);
+ } else {
+ imageBuffer.src = url;
+ imageBuffer.onLoad = setTimeout(function(){this.url = url;this.loadIntoBuffer = loadIntoBuffer;postImageLoad(loadIntoBuffer,url);},0);
+ }
+ }
+
+ function setOpacity(opacity, id) {
+ var target = document.getElementById(id);
+ if (typeof target.style.filter != 'undefined') {
+ target.style.filter = "alpha(opacity:" + opacity + ")";
+ } else {
+ target.style.opacity = opacity/100;
+ }
+ }
+
+ function crossFade(count,loadIntoBuffer) {
+ var percentage = Number(count);
+ if (loadIntoBuffer) {
+ setOpacity(100 - percentage, IMAGE_PANE_ID);
+ setOpacity(percentage, IMAGE_PANE_BUFFER_ID);
+ } else {
+ setOpacity(100 - percentage, IMAGE_PANE_BUFFER_ID);
+ setOpacity(percentage, IMAGE_PANE_ID);
+
+ }
+ if (percentage < 100) {
+ percentage = percentage + 10;
+ setTimeout(function(){this.loadIntoBuffer = loadIntoBuffer;this.percentage = percentage;crossFade(percentage,loadIntoBuffer);}, 25);
+ }
+ }
+
+
+ // calling this function will result in the maximizing event being fired
+ // if the pane is maximized it will asume the event want to minimize
+ this.doMaximize = function() {
+ if (!maximizing && !minimizing && !maximized) {
+ infoPaneLoop = INFOPANE_DEFAULT_HEIGHT;
+ maximizing = true;
+ minimizing = false;
+ } else if (!maximizing && !minimizing) {
+ minimizing = true;
+ maximizing = false;
+ }
+ setTimeout(changeInfoPane, 0);
+ }
+
+ // will handle either minimizing or maximing but not both
+ // this method is called recursively until the maximinging
+ // or minimizing is done.
+ function changeInfoPane() {
+ if (maximizing) {
+ maxmizeInfoPane();
+ } else if (minimizing) {
+ minimizeInfoPane();
+ }
+ }
+
+ function maxmizeInfoPane() {
+ if (infoPaneLoop < INFOPANE_EXPAND_HEIGHT) {
+ infoPaneLoop = infoPaneLoop + INFOPANE_INCREMENT;
+ var clipMe = 'rect(' + '0px,' + VIEWPORT_WIDTH + 'px,'+ infoPaneLoop +'px,' + 0 + 'px)';
+ infoPane.style.clip = clipMe;
+ infoPane.style.height = infoPaneLoop;
+ infoPane.style.top = (tileY + (PADDING *2) + INFOPANE_DEFAULT_HEIGHT + IMAGEPANE_HEIGHT) - infoPaneLoop;
+ setTimeout(changeInfoPane, 5);
+ } else {
+ minimizeImage.src= MINIMIZE_IMG_URI;
+ minimizeLink.title = MINIMIZE_IMG_TOOLTIP;
+ maximized = true;
+ maximizing = false;
+ minimizing = false;
+ }
+ }
+
+ function minimizeInfoPane() {
+ if (infoPaneLoop > INFOPANE_DEFAULT_HEIGHT) {
+ infoPaneLoop = infoPaneLoop - INFOPANE_INCREMENT;
+ var clipMe = 'rect(' + '0px,' + VIEWPORT_WIDTH + 'px,'+ infoPaneLoop +'px,' + 0 + 'px)';
+ infoPane.style.clip = clipMe;
+ infoPane.style.height = infoPaneLoop;
+ infoPane.style.top = (tileY + (PADDING *2) + INFOPANE_DEFAULT_HEIGHT + IMAGEPANE_HEIGHT) - infoPaneLoop;
+ if (debug) {
+ status2Div.innerHTML = "minimize infoPaneLoop =" + infoPaneLoop + " infopane.top=" + infoPane.style.top;
+ }
+ setTimeout(changeInfoPane, 5);
+ } else {
+ minimizeImage.src= MAXIMIZE_IMG_URI;
+ minimizeLink.title = MAXIMIZE_IMG_TOOLTIP;
+ maximizing = false;
+ minimizing = false;
+ maximized = false;
+ }
+ }
+
+ function scrollRight() {
+ isScrollingRight = true;
+ if ( (index + 4) >= tiles.length) {
+ // hide the rightButton
+ rightButton.style.visibility="hidden";
+ return;
+ } else {
+ leftButton.style.visibility="visible";
+ }
+ offset = offset - SCROLL_INCREMENT;
+ drawTiles();
+ setTimeout(scroll, timeout);
+ }
+
+ function getNext() {
+ isScrollingRight = true;
+ setTimeout(scroll, timeout);
+ }
+
+
+ function getPrevious () {
+ isScrollingLeft = true;
+ setTimeout(scroll, timeout);
+ }
+
+ function scrollLeft() {
+ if (offset >= 0) {
+ leftButton.style.visibility="hidden";
+ return;
+ } else {
+ leftButton.style.visibility="visible";
+ }
+ offset = offset + SCROLL_INCREMENT;
+ drawTiles();
+ setTimeout(scroll, timeout);
+ }
+
+ function drawTiles() {
+ // draw the first one if its off the screen
+ // check if the far right image is out view
+ var overHang;
+ var temp = offset;
+ index = Math.floor((offset)/THUMB_WIDTH);
+ overHang = offset % THUMB_WIDTH;
+ if (overHang < 0) {
+ overHang = overHang * -1;
+ }
+ if (index < 0) {
+ index = index * -1;
+ }
+ // check for next set of images
+ prefetch();
+ var startIndex = index;
+ if (overHang > 0 && index >0) {
+ startIndex = index -1;
+ }
+ var stopIndex = index + Math.round(VIEWPORT_WIDTH / THUMB_WIDTH);
+ if (stopIndex > tiles.length) {
+ stopIndex = tiles.length;
+ }
+ var displayX = 0;
+ for (var tl=startIndex; tl < stopIndex; tl++) {
+ if (debug) {
+ statusDiv.innerHTML = "overhang=" + overHang + " startIndex=" + startIndex + " stopIndex=" + stopIndex + " offset=" + offset + " displayX=" + displayX;
+ }
+ if (overHang > 0 && tl == startIndex) {
+ rightButton.style.visibility="visible";
+ // clip: rect(top right bottom left) - borders of the clipped area
+ // clip the left
+ var clipMe = 'rect(' + '0px,' + THUMB_WIDTH + 'px,'+ THUMB_HEIGHT +'px,' + overHang + 'px)';
+ tiles[tl].style.clip = clipMe;
+ tiles[tl].style.left = (tileX - overHang) + "px";
+ displayX = displayX + (THUMB_WIDTH - overHang);
+ } else if (tl == stopIndex -1) {
+ var underHang = VIEWPORT_WIDTH - displayX ;
+ if (underHang > 0 && underHang) {
+ var clipMe = 'rect(' + '0px,' + (underHang) + "px," + THUMB_HEIGHT +'px,' + 0 + 'px)';
+ tiles[tl].style.clip = clipMe;
+ tiles[tl].style.left = tileX + (offset + (tl * THUMB_WIDTH)) + 'px';
+ tiles[tl].style.visibility = "visible";
+ // resize the previous one to its real length
+ } else if (underHang < 0 && tl > 0) {
+ var clipMe = 'rect(' + '0px,' + (THUMB_WIDTH + underHang) + "px," + THUMB_HEIGHT +'px,' + 0 + 'px)';
+ tiles[tl-1].style.clip = clipMe;
+ tiles[tl-1].style.visibility = "visible";
+ tiles[tl-1].style.left = tileX + (offset + ((tl -1) * THUMB_WIDTH)) + 'px';
+ } else {
+ tiles[tl].style.left = '0px';
+ tiles[tl].style.visibility = "hidden";
+ }
+ } else {
+ displayX = displayX + THUMB_WIDTH;
+ tiles[tl].style.left = tileX + (offset + (tl * THUMB_WIDTH)) + 'px';
+ tiles[tl].style.visibility = "visible";
+ }
+ }
+ if (stopIndex < tiles.length) {
+ tiles[stopIndex].style.visibility = "hidden";
+ tiles[stopIndex].style.left = "0px";
+ }
+ }
+
+
+ this.load = function () {
+ map = new Map();
+ dojo.event.connect(window, "onresize", layout);
+ var loadImage;
+
+ var targetRow = document.getElementById("targetRow");
+ injectionPoint = document.getElementById("injection_point");
+
+ // for status output
+ statusDiv = document.getElementById("status");
+ status2Div = document.getElementById("status_2");
+
+ initLayout();
+ initialized = true;
+ }
+
+ function initLayout() {
+ containerDiv = document.getElementById("CatalogBrowser");
+ rightButton = document.getElementById("right_button");
+ leftButton = document.getElementById("left_button");
+ layout();
+ leftButton.style.visibility="hidden";
+ if (typeof rightButton.attachEvent != 'undefined') {
+ rightButton.attachEvent('onmouseover',function(e){scrollDone();getNext();});
+ rightButton.attachEvent('onmouseout',function(e){scrollDone();});
+ leftButton.attachEvent('onmouseover',function(e){scrollDone();getPrevious();});
+ leftButton.attachEvent('onmouseout',function(e){scrollDone();});
+ } else if (typeof rightButton.addEventListener != 'undefined') {
+ rightButton.addEventListener('mouseover',function(e){scrollDone();getNext();}, false);
+ rightButton.addEventListener('mouseout',function(e){scrollDone();}, false);
+ leftButton.addEventListener('mouseover',function(e){scrollDone();getPrevious();}, false);
+ leftButton.addEventListener('mouseout',function(e){scrollDone();}, false);
+ }
+ createInfoPane();
+ }
+
+ function layout() {
+ var ua = navigator.userAgent.toLowerCase();
+
+ // this will need to be made generic depending on the thumb height
+ tileY = findY(containerDiv);
+ tileX = findX(containerDiv) + 4;
+ var rightX = tileX + VIEWPORT_WIDTH - 20;
+ rightButton.style.left = rightX + "px";
+ var buttonY = tileY + IMAGEPANE_HEIGHT + INFOPANE_DEFAULT_HEIGHT + 12;
+ rightButton.style.top = buttonY + "px";
+ leftButton.style.top = buttonY + "px";
+
+ if (ua.indexOf('ie') != -1) {
+ isIE = true;
+ } else if (ua.indexOf('safari') != -1) {
+ tileX = tileX + 8;
+ timeout = 20;
+ }
+ drawTiles();
+ if (infoPane) {
+ infoPane.style.left = tileX + "px";
+ if (maximized) {
+
+ infoPane.style.top = (tileY + IMAGEPANE_HEIGHT + (PADDING*2) - infoPane.style.height) + "px";
+ } else {
+ infoPane.style.top = (tileY + IMAGEPANE_HEIGHT + (PADDING*2)) + "px";
+ }
+ if (maximized) {
+ infoPaneLoop = infoPane.style.height;
+ } else {
+ infoPaneLoop = INFOPANE_DEFAULT_HEIGHT;
+ }
+ }
+ if (typeof imageLoadingPane != 'undefined') {
+ imageLoadingPane.style.left = tileX;
+ imageLoadingPane.style.top = tileY;
+ }
+ }
+
+ function createInfoPane() {
+ infoPane = document.getElementById("infopane");
+ infoPane.style.width = VIEWPORT_WIDTH + "px";
+ // give room for 4 pixels above and below
+ infoPane.style.height = (INFOPANE_DEFAULT_HEIGHT) + "px";
+ // give 3px padding for a border
+ infoPane.style.top = (tileY + IMAGEPANE_HEIGHT + (PADDING*2)) + "px";
+ infoPane.style.left = tileX + "px";
+ infoTableMinimize = document.getElementById("infopaneDetailsIcon");
+ indicatorCell = document.getElementById("infopaneIndicator");
+ indicatorCell.style.width = (10) + "px";
+ indicatorImage = document.createElement("img");
+ indicatorImage.className = "infopaneIndicator";
+ indicatorImage.src = INDICATOR_IMG_URI;
+ indicatorImage.style.visibility = "hidden";
+ indicatorCell.appendChild(indicatorImage);
+ minimizeLink = document.createElement("a");
+ minimizeLink.className = "infopaneLink";
+ minimizeLink.title = MAXIMIZE_IMG_TOOLTIP;
+ minimizeImage = document.createElement("img");
+ minimizeImage.src= MAXIMIZE_IMG_URI;
+ minimizeLink.appendChild(minimizeImage);
+ infoTableMinimize.appendChild(minimizeLink);
+
+ if (typeof minimizeLink.attachEvent != 'undefined') {
+ minimizeLink.attachEvent("onclick",function(e){_this.doMaximize();});
+ } else {
+ minimizeLink.addEventListener("click",function(e){_this.doMaximize();}, true);
+ }
+ var clipMe = 'rect(' + '0px,' + VIEWPORT_WIDTH + 'px,'+ INFOPANE_DEFAULT_HEIGHT +'px,' + 0 + 'px)';
+ infoPane.style.clip = clipMe;
+ }
+
+ function createTile(i) {
+ var div = document.createElement("div");
+ div.className = "tile";
+ div.id = i.id;
+ var link = document.createElement("a");
+ var img = document.createElement("img");
+ img.title = i.name;
+ img.src = i.thumbnail;
+ img.className = "tileImage";
+ link.appendChild(img);
+ link.setAttribute("id", i.id);
+ if (typeof div.attachEvent != 'undefined') {
+ div.attachEvent('onclick',function(e){this.id = div.id; _this.showImage(this.id, false);});
+ } else {
+ link.addEventListener('click',function(e){this.id = div.id; _this.showImage(this.id, false);}, true);
+ }
+ div.appendChild(link);
+ injectionPoint.appendChild(div);
+ div.style.top = tileY + INFOPANE_DEFAULT_HEIGHT + IMAGEPANE_HEIGHT + (PADDING * 3) + "px";
+ tiles.push(div);
+ }
+
+
+ function findY(element) {
+ var t = 0;
+ if (element.offsetParent) {
+ while (element.offsetParent) {
+ t += element.offsetTop
+ element = element.offsetParent;
+ }
+ } else if (element.y) {
+ t += element.y;
+ }
+ return t;
+ }
+
+ function findX(element) {
+ var l = 0;
+ if (element.offsetParent) {
+ while (element.offsetParent) {
+ l += element.offsetLeft
+ element = element.offsetParent;
+ }
+ } else if (element.x)
+ l += element.x;
+ return l;
+ }
+}
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/search.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/search.jsp
new file mode 100644
index 0000000..e12d666
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/search.jsp
@@ -0,0 +1,290 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: search.jsp,v 1.28 2006/12/04 21:34:10 basler Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="java.util.*, com.sun.javaee.blueprints.petstore.search.*"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui5" uri="http://java.sun.com/blueprints/ui " %>
+
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>Search Page</title>
+ <style>
+ .itemTable {
+ padding: 0.3cm;
+ width: 800px;
+ border-style: double;
+ border-color: darkgreen;
+ }
+ .itemCell {
+ border-style: solid;
+ border-color: darkgreen;
+ border-width: thin;
+ padding: 5px
+ }
+ .tagDiv {
+ border-style: groove;
+ border-color: darkgreen;
+ background-color: white;
+ border-width: thick;
+ padding: 5px;
+ visibility: hidden;
+ position:absolute;
+ left:0px;
+ top:0px;
+ z-index: 3;
+ }
+ </style>
+ <script type="text/javascript" src="common.js"></script>
+ </head>
+ <body>
+ <jsp:include page="banner.jsp" />
+ <center>
+
+ <script type="text/javascript">
+ function checkAll() {
+ var elems=dojo.byId("resultsForm").elements;
+ for(ii=0; ii < elems.length; ii++) {
+ if(elems[ii].name.indexOf("mapSelectedItems") >= 0) {
+ elems[ii].checked=true;
+ }
+ }
+ return false;
+ }
+
+ function uncheckAll() {
+ var elems=dojo.byId("resultsForm").elements;
+ for(ii=0; ii < elems.length; ii++) {
+ if(elems[ii].name.indexOf("mapSelectedItems") >= 0) {
+ elems[ii].checked=false;
+ }
+ }
+ return false;
+ }
+
+ function addTags(eventx, namex, itemIdx) {
+ var xx=0;
+ var yy=0;
+ if (!eventx) var eventx=window.event;
+ if (eventx.pageX || eventx.pageY){
+ xx=eventx.pageX;
+ yy=eventx.pageY;
+ } else if (eventx.clientX || eventx.clientY) {
+ xx=eventx.clientX + document.body.scrollLeft;
+ yy=eventx.clientY + document.body.scrollTop;
+ }
+ divId="addTags";
+ document.getElementById("addTagsItemId").value=itemIdx;
+ document.getElementById("addTagsTags").value="";
+ document.getElementById("addTagsTitle").innerHTML="<b>Add Tags to '" + namex + "'</b>";
+ document.getElementById(divId).style.left=(xx - 170) + "px";
+ document.getElementById(divId).style.top=(yy - 140) + "px";
+ document.getElementById(divId).style.visibility='visible';
+ document.getElementById("addTagsTags").focus();
+ }
+
+ function saveAddTags() {
+ // get data and send to controller servlet
+ itemIdx=document.getElementById("addTagsItemId").value;
+ tagsx=document.getElementById("addTagsTags").value;
+ var bindArgs = {
+ url: "../TagServlet?itemId=" + escape(itemIdx) + "&tags=" + escape(tagsx),
+ mimetype: "text/xml",
+ error: ajaxBindError,
+ load: function(type, data, evt){
+ // check successful response
+ if (evt.readyState == 4) {
+ if (evt.status == 200) {
+ // get results and replace dom elements
+ var resultx=data.getElementsByTagName("response")[0];
+ itemIdx=resultx.getElementsByTagName("itemId")[0].childNodes[0].nodeValue;
+
+ // change DOM data
+ document.getElementById("ITEMID_TAGS_" + itemIdx).innerHTML=resultx.getElementsByTagName("tags")[0].childNodes[0].nodeValue;
+
+ } else if (evt.status == 204){
+ alert("204 return");
+ }
+ }
+ }
+ };
+
+ dojo.io.bind(bindArgs);
+ // make sure it was updated
+
+ // show messages if error
+
+ // hide popup
+ document.getElementById(divId).style.visibility='hidden';
+ }
+
+ function cancelAddTags() {
+ // hide popup
+ document.getElementById(divId).style.visibility='hidden';
+ }
+
+ </script>
+
+ <f:view>
+
+ <ui5:popupTag id="pop1" xmlHttpRequestURL="../lookup.jsp?popupView=2&itemId="
+ elementNamePairs="name=value1,description=value2,price=value3,image=imageId">
+ <!-- Used as spaces to center the table, this could be done programmatically,
+ but browser diff, so I left it in the hands of the component user. The image is located
+ in the component jar so for retrieval, push it through the faces servlet -->
+ <img id="spaceImage" height="10px" width="3px" src="${pageContext.request.contextPath}/faces/static/META-INF/popup/images/spacer.gif" align="left">
+ <table border="0" width="270px" bgcolor="#ffffff" cellpadding="5" cellspacing="5">
+ <tr>
+ <td align="left" valign="top"><b>Name:</b>
+ <span id="value1">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td align="left" valign="top"><b>Seller Address:</b>
+ <span id="value2">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td align="left" valign="top"><b>Price:</b>
+ <span id="value3">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"><img name="image" id="imageId" src=""
+ alt="[Loading Image...]" border="2"/><br/><br/></td>
+ </tr>
+ </table>
+ </ui5:popupTag>
+
+ <h1>Search Page</h1>
+ <h:form id="searchForm">
+ <table class="itemTable" style="width: 700px">
+ <tr>
+ <th class="itemCell">Search String</th>
+ <td class="itemCell">
+ <h:inputText size="50" id="searchString" value="#{SearchBean.searchString}"/>
+ Also Search Tags:<h:selectBooleanCheckbox id="searchTags" value="#{SearchBean.searchTags}"/>
+ </td>
+ </tr>
+ <tr>
+ <td class="itemCell" align="center" colspan="2">
+ <h:commandButton action="#{SearchBean.searchAction}" id="searchSubmit" type="submit" value="Submit"/>
+ <h:commandButton id="searchReset" type="reset" value="Reset"/>
+ </td>
+ </tr>
+ </table>
+ <h:messages/>
+ </h:form>
+ <br/>
+
+
+
+ <h:form id="resultsForm" rendered="#{SearchBean.showResults}">
+ <table class="itemTable">
+ <tr>
+ <th class="itemCell">
+ Map
+ <br/>
+ <img src="../images/check_all.gif" onclick="return checkAll()"/><img src="../images/uncheck_all.gif" onclick="return uncheckAll()"/>
+ </th>
+ <th class="itemCell">Name</th>
+ <th class="itemCell">Description</th>
+ <th class="itemCell">Tags</th>
+ <th class="itemCell">Price</th>
+ </tr>
+<%
+SearchBean searchBean=(SearchBean)session.getAttribute("SearchBean");
+if(searchBean != null) {
+ List<IndexDocument> hits=searchBean.getHits();
+ if(hits != null) {
+ for(IndexDocument indexDoc : hits) {
+%>
+ <tr>
+ <td class="itemCell">
+ <input type="checkbox" name="mapSelectedItems" value="<%= indexDoc.getUID() %>"/>
+ </td>
+ <td class="itemCell">
+ <a href="${pageContext.request.contextPath}/faces/catalog.jsp?pid=<%= indexDoc.getProduct() %>&itemId=<%= indexDoc.getUID() %>"
+ onmouseover="bpui.popup.show('pop1', event, '<%= indexDoc.getUID() %>')" onmouseout="bpui.popup.hide('pop1')">
+ <%= indexDoc.getTitle() %>
+ </a>
+ </td>
+ <td class="itemCell">
+ <%= indexDoc.getSummary() %>
+ </td>
+ <td class="itemCell">
+ <span id="ITEMID_TAGS_<%= indexDoc.getUID() %>"><%= (indexDoc.getTag().equals("") ? " " : indexDoc.getTag()) %></span>
+ <br/><input type="button" value="Add Tags" onclick="addTags(event, '<%= indexDoc.getTitle() %>', '<%= indexDoc.getUID() %>')"/>
+ </td>
+ <td class="itemCell">
+ <%= indexDoc.getPriceDisplay() %>
+ </td>
+ </tr>
+<%
+ }
+ }
+}
+%>
+ <tr>
+ <td colspan="5">
+ <br/>
+ <center>
+ <table class="itemTable">
+ <tr>
+ <th align="right">Center Point Address:</th>
+ <td>
+ <h:inputText id="centerAddress" value="#{MapBean.centerAddress}" size="50"/>
+ <br/><small><i>For example: 4140 Network Circle, Santa Clara, CA, 95054</i></small>
+ </td>
+ </tr>
+ <tr>
+ <th align="right">Area (in Miles):</th>
+ <td>
+ <h:inputText id="radius" value="#{MapBean.radius}" size="5"/>
+ </td>
+ </tr>
+ <tr>
+ <td align="center" colspan="2">
+ <h:commandButton action="#{MapBean.findAllByIDs}" id="mapSubmit" type="submit"
+ value="Map Checked Item(s)" rendered="#{SearchBean.showResults}"/>
+ </td>
+ </tr>
+ </table>
+ </center>
+ <br/>
+ </td>
+ </tr>
+ </table>
+
+ <h:messages/>
+ </h:form>
+ <br/><br/><br/>
+ <div class="tagDiv" id="addTags">
+ <form>
+ <table>
+ <tr>
+ <td align="center">
+ <span id="addTagsTitle"><b>Tag Title</b></span><br/><i>(seperated by spaces)</i>
+ </td>
+ </tr>
+ <tr>
+ <td align="center">
+ <input id="addTagsTags" type="text" size="50"/>
+ </td>
+ </tr>
+ <tr>
+ <td align="center">
+ <input type="button" value="Save" onclick="saveAddTags()"/> <input type="button" value="Cancel" onclick="cancelAddTags()"/>
+ </td>
+ </tr>
+ </table>
+ <input type="hidden" id="addTagsItemId"/>
+ </form>
+ </div>
+ </f:view>
+ </center>
+ <jsp:include page="footer.jsp" />
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/styles.css b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/styles.css
new file mode 100644
index 0000000..24ffbf9
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/styles.css
@@ -0,0 +1,130 @@
+
+.dojoHtmlFisheyeListBar {
+ cursor:pointer;
+ margin: 0;
+ width: 300px;
+ text-align: right;
+}
+
+.outerbar {
+ background-color: white;
+ text-align: left;
+ width: 300px;
+}
+
+.editText {
+ height:25;
+ font-size:18px;
+ font-weight: bold;
+ font-family: Arial;
+}
+
+.plainText {
+ height:25;
+ font-size:20px;
+ font-weight: bold;
+ font-family: Arial
+}
+
+.plainTextSelect {
+ height:25;
+ font-size:20px;
+ font-weight: bold;
+ font-family: Arial;
+ background: red
+}
+
+.smallText {
+ height:15;
+ font-size:13px;
+ font-weight: bold;
+ font-family: Arial
+}
+
+.banner {
+ height:35;
+ font-size:35;
+ font-weight: bold;
+ font-family: Arial
+}
+
+
+.menuItem {
+ background: white;
+ color: black;
+ text-decoration: none;
+ font-size: 1.4em;
+}
+
+.menuLink {
+ cursor:pointer;
+ color: black;
+ text-decoration: none;
+ font-size: 1.3em;
+}
+
+.menuLinkHover {
+ cursor:pointer;
+ color: black;
+ font-size: 1.3em;
+ text-decoration: underline;
+}
+
+.autocomplete {
+ position:absolute;
+}
+
+.autocompleteTable {
+ padding:0;
+ visibility: hidden;
+ border-spacing: 0;
+ border-width:1px;
+ border-style:solid;
+ border-color:black;
+}
+
+.popupRowHover {
+ color: #FFFAFA;
+ cursor:pointer;
+ padding-left:3;
+ padding-right:3;
+ border-spacing: 0;
+ border-width:0px;
+ background: #7A8AFF;
+}
+
+.popupRow {
+ padding-left:3;
+ padding-right:3;
+ border-spacing: 0;
+ border-width:0px;
+ background: #FFFAFA;
+}
+
+.popupRowEven {
+ padding-left:3;
+ padding-right:3;
+ border-spacing: 0;
+ border-width:0px;
+ background: #FFFADA;
+}
+
+.popupItem {
+ background: #FFFAFA;
+ color: #000000;
+ text-decoration: none;
+ font-size: 1.2em;
+}
+
+.shadow {
+ top:0px;
+ left:0px;
+ position: absolute;
+ visibility: hidden;
+ width:0;
+ height:0;
+ z-index:0;
+ background:gray;
+ opacity: .5;
+}
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/systemerror.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/systemerror.jsp
new file mode 100644
index 0000000..c7a5309
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/systemerror.jsp
@@ -0,0 +1,28 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: systemerror.jsp,v 1.3 2007/01/09 19:02:12 basler Exp $ --%>
+<%@ page isErrorPage="true" %>
+<%@ page import="com.sun.javaee.blueprints.petstore.util.PetstoreUtil, java.util.logging.Level" %>
+<%
+PetstoreUtil.getLogger().log(Level.INFO, "Encountered a Runtime Exception and being transferred the the systemerror page", exception);
+%>
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
+ <title>Java Pet Store Reference Application: System Error Page</title>
+ </head>
+ <body>
+
+ <jsp:include page="banner.jsp" />
+
+ <h2>System Error !</h2>
+ <p>We had problems processing your request. An exception has been caught,
+ so perhaps your application was not set up or deployed properly.</p>
+
+ The Exception that was thrown is:<b> <%= exception.toString() %></b>. The server log will contain the stack trace of the exception.
+
+ <p><a href="${pageContext.request.contextPath}/faces/index.jsp">Go back to sample application home</a></p>
+ <br/><br/>
+ <jsp:include page="footer.jsp" />
+
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tag.css b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tag.css
new file mode 100644
index 0000000..bfbab6e
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tag.css
@@ -0,0 +1,47 @@
+ .itemTable {
+ padding: 0.3cm;
+ border-style: double;
+ width: 800px;
+ border-color: darkgreen;
+ }
+ .itemCell {
+ border-style: solid;
+ border-color: darkgreen;
+ border-width: thin;
+ padding: 5px
+ }
+ .tagCell {
+ padding: 0.3cm;
+ }
+ .xxlarge
+ {
+ font-size: xx-large;
+ color: red;
+ cursor: pointer;
+ text-decoration: underline;
+ }
+ .xlarge
+ {
+ font-size: x-large;
+ color: blue;
+ cursor: pointer;
+ text-decoration: underline;
+ }
+ .large
+ {
+ font-size: large;
+ color: green;
+ cursor: pointer;
+ text-decoration: underline;
+ }
+ .medium
+ {
+ font-size: medium;
+ cursor: pointer;
+ color: black;
+ text-decoration: underline;
+ }
+ .items
+ {
+ visibility: hidden;
+ }
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tag.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tag.jsp
new file mode 100644
index 0000000..f9c74f3
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tag.jsp
@@ -0,0 +1,158 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: tag.jsp,v 1.11 2007/01/17 18:00:09 basler Exp $ --%>
+
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="java.util.*, com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Tag"%>
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
+<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
+<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
+<%@taglib prefix="ui5" uri="http://java.sun.com/blueprints/ui " %>
+
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>Tag Page</title>
+ <script type="text/javascript" src="./common.js"></script>
+ <link type="text/css" rel="stylesheet" href="./tag.css"/>
+<%
+try {
+ CatalogFacade cf = (CatalogFacade)config.getServletContext().getAttribute("CatalogFacade");
+ List<Tag> tags=cf.getTagsInChunk(0, 90);
+ // since top 20 come from database or desending refCount order, need to reorder by tag name
+ Collections.sort(tags, new Comparator() {
+ public int compare(Object one, Object two) {
+ return ((Tag)one).getTag().compareTo(((Tag)two).getTag());
+ }
+ });
+%>
+ <script language="javascript">
+ function retrieveItems(tag) {
+ var bindArgs = {
+ // url when using the jsp to serve the ajax request
+ url: "../tagItemLookup.jsp?tag=" + escape(tag),
+ mimetype: "text/xml",
+ load: returnFunctionx,
+ error: ajaxBindError};
+
+ // dispatch the request
+ dojo.io.bind(bindArgs);
+ }
+
+
+ function returnFunctionx(type, data, evt) {
+ // statically setup popup for simple case
+ var componentId="displayItems";
+ // check return of the dojo call to make sure it is valid
+ if (evt.readyState == 4) {
+ if (evt.status == 200) {
+ // get results and replace dom elements
+ var itemsx=data.getElementsByTagName("item");
+ display="<table class='itemTable'><tr><td class='itemCell' align='center' colspan='4'><h2>Tag: " +
+ data.getElementsByTagName("tag")[0].childNodes[0].nodeValue +
+ "</h2></td></tr><tr><th class='itemCell'>Name</th><th class='itemCell'>Description</th><th class='itemCell'>Tags</th><th class='itemCell'>Price</th></tr>"
+ for(ii=0; ii < itemsx.length; ii++) {
+ display += "<tr>";
+ display +="<td class='itemCell'><a href='./catalog.jsp?pid="+ itemsx[ii].getElementsByTagName("productID")[0].childNodes[0].nodeValue +"&itemId=" +
+ itemsx[ii].getElementsByTagName("itemID")[0].childNodes[0].nodeValue + "' onmouseover='bpui.popup.show("pop1", event, "" +
+ itemsx[ii].getElementsByTagName("itemID")[0].childNodes[0].nodeValue + "")' onmouseout='bpui.popup.hide("pop1")'>" +
+ itemsx[ii].getElementsByTagName("name")[0].childNodes[0].nodeValue +"</a></td>";
+ display +="<td class='itemCell'>" + itemsx[ii].getElementsByTagName("description")[0].childNodes[0].nodeValue +"</td>";
+ display +="<td class='itemCell'>" + itemsx[ii].getElementsByTagName("tags")[0].childNodes[0].nodeValue +"</td>";
+ display +="<td class='itemCell' style='text-align: right'>" + itemsx[ii].getElementsByTagName("price")[0].childNodes[0].nodeValue +"</td>";
+ display +="</tr>";
+ }
+ display += "</table>";
+ document.getElementById(componentId).innerHTML=display;
+ document.getElementById(componentId).style.visibility='visible';
+ } else if (evt.status == 204){
+ alert("204 return");
+ }
+ }
+ }
+
+
+ function checkQueryString() {
+ <!-- add script to check for tag in query string, if exists then retrieve data -->
+ var iPos=window.location.href.indexOf("?tag=");
+ if(iPos > -1) {
+ // have tag so retrieve items
+ retrieveItems(window.location.href.substr(iPos + 5));
+ }
+ }
+
+ </script>
+ </head>
+ <body onload="checkQueryString();">
+ <jsp:include page="banner.jsp" />
+ <f:view>
+
+ <ui5:popupTag id="pop1" xmlHttpRequestURL="../lookup.jsp?popupView=2&itemId="
+ elementNamePairs="name=value1,description=value2,price=value3,image=imageId">
+ <!-- Used as spaces to center the table, this could be done programmatically,
+ but browser diff, so I left it in the hands of the component user. The image is located
+ in the component jar so for retrieval, push it through the faces servlet -->
+ <img id="spaceImage" height="10px" width="10px" src="${pageContext.request.contextPath}/faces/static/META-INF/popup/images/spacer.gif" align="left">
+ <table border="0" width="270px" bgcolor="#ffffff" cellpadding="5" cellspacing="5">
+ <tr>
+ <td align="left" valign="top"><b>Name:</b>
+ <span id="value1">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td align="left" valign="top"><b>Seller Address:</b>
+ <span id="value2">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td align="left" valign="top"><b>Price:</b>
+ <span id="value3">Loading Data...</span></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"><img name="image" id="imageId" src=""
+ alt="[Loading Image...]" border="2"/><br/><br/></td>
+ </tr>
+ </table>
+ </ui5:popupTag>
+ <center>
+ <h1>Tag Page</h1>
+ <table border="0">
+ <tr>
+<%
+ String style=null;
+ int refx=0, ii=0;
+ for(Tag tag : tags) {
+ refx=tag.getRefCount() / 5;
+ if(refx >= 3) {
+ style="xxlarge";
+ } else if(refx == 2) {
+ style="xlarge";
+ } else if(refx == 1) {
+ style="large";
+ } else {
+ style="medium";
+ }
+
+ if((ii % 6) == 0) out.println("</tr>\n<tr>");
+ //out.println("<td class='tagCell'><span onclick=\"retrieveItems('" + tag.getTag() + "')\" class='" + style +"'>" + tag.getTag() + "</span> (" + tag.getRefCount() + ")</td>");
+ out.println("<td class='tagCell'><span onclick=\"retrieveItems('" + tag.getTag() + "')\" class='" + style +"'>" + tag.getTag() + "</span></td>");
+ ii++;
+ }
+%>
+ </tr>
+ </table>
+ <div id="displayItems" class="items">
+
+ </div>
+ </center>
+ </f:view>
+ <br/><br/><br/><br/>
+ <jsp:include page="footer.jsp" />
+
+ </body>
+</html>
+
+<%
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+%>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tagItemLookup.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tagItemLookup.jsp
new file mode 100644
index 0000000..05ef352
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/tagItemLookup.jsp
@@ -0,0 +1,45 @@
+<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
+$Id: tagItemLookup.jsp,v 1.4 2007/01/19 21:47:31 basler Exp $ --%>
+
+<%@page contentType="text/xml"%>
+<%@page pageEncoding="UTF-8"%>
+<%@page import="java.util.*, java.text.NumberFormat, com.sun.javaee.blueprints.petstore.model.CatalogFacade, com.sun.javaee.blueprints.petstore.model.Item, com.sun.javaee.blueprints.petstore.model.Tag"%>
+
+<%
+ String sxTag=request.getParameter("tag");
+
+ try {
+ response.setHeader("Pragma", "No-Cache");
+ response.setHeader("Cache-Control", "no-cache,no-store,max-age=0");
+ response.setDateHeader("Expires", 1);
+
+ ServletContext context=config.getServletContext();
+ CatalogFacade cf=(CatalogFacade)context.getAttribute("CatalogFacade");
+ Tag tag=cf.getTagWithPersistentItems(sxTag);
+ out.println("<response>");
+
+ if(tag != null) {
+ out.println("<tag>" + tag.getTag() + "</tag>");
+ out.println("<items>");
+ Collection<Item> items=tag.getItems();
+ for(Item item : items) {
+ if(item.getDisabled() == 0) {
+ out.println("<item>");
+ out.println("<itemID>" + item.getItemID() + "</itemID>");
+ out.println("<productID>" + item.getProductID() + "</productID>");
+ out.println("<name><![CDATA[" + item.getName() + "]]></name>");
+ out.println("<description><![CDATA[" + item.getDescription() + "]]></description>");
+ out.println("<tags><![CDATA[" + item.tagsAsString() + "]]></tags>");
+ out.println("<price><![CDATA[" + NumberFormat.getCurrencyInstance(java.util.Locale.US).format(item.getPrice()) + "]]></price>");
+ out.println("</item>");
+ }
+ }
+ out.println("</items>");
+ }
+ out.println("</response>");
+ out.flush();
+ } catch(Exception ee) {
+ ee.printStackTrace();
+ }
+
+%>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/testis.jsp b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/testis.jsp
new file mode 100644
index 0000000..e5dd68a
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/testis.jsp
@@ -0,0 +1,36 @@
+<%@page contentType="text/html"%>
+<%@page pageEncoding="UTF-8"%>
+<%--
+The taglib directive below imports the JSTL library. If you uncomment it,
+you must also add the JSTL library to the project. The Add Library... action
+on Libraries node in Projects view can be used to add the JSTL 1.1 library.
+--%>
+<%--
+<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c"%>
+--%>
+
+<!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>JSP Page</title>
+ </head>
+ <body>
+
+ <h1>JSP Page</h1>
+
+ <%--
+ This example uses JSTL, uncomment the taglib directive above.
+ To test, display the page like this: index.jsp?sayHello=true&name=Murphy
+ --%>
+ <%--
+ <c:if test="${param.sayHello}">
+ <!-- Let's welcome the user ${param.name} -->
+ Hello ${param.name}!
+ </c:if>
+ --%>
+
+ </body>
+</html>
diff --git a/etc/samples/provisioning/sample-bundle/src/main/scripts/assembly.xml b/etc/samples/provisioning/sample-bundle/src/main/scripts/assembly.xml
new file mode 100644
index 0000000..942e5f9
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/scripts/assembly.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<assembly>
+ <!-- The id gets appended to the end of the zipfile name unless
+ it's an empty string, so make it an empty string. -->
+ <id></id>
+ <formats>
+ <format>zip</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+ <baseDirectory>target/bundle</baseDirectory>
+ <fileSets>
+ <fileSet>
+ <directory>target/bundle</directory>
+ <outputDirectory>/</outputDirectory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.sh</exclude>
+ <exclude>**/*.so</exclude>
+ <exclude>**/*.sl</exclude>
+ <exclude>**/*.dylib</exclude>
+ </excludes>
+ </fileSet>
+ <fileSet>
+ <directory>target/bundle</directory>
+ <outputDirectory>/</outputDirectory>
+ <includes>
+ <include>**/*.sh</include>
+ <include>**/*.so</include>
+ <include>**/*.sl</include>
+ <include>**/*.dylib</include>
+ </includes>
+ <fileMode>0755</fileMode>
+ </fileSet>
+ </fileSets>
+</assembly>
+
diff --git a/etc/samples/provisioning/sample-bundle/src/main/scripts/build.xml b/etc/samples/provisioning/sample-bundle/src/main/scripts/build.xml
new file mode 100644
index 0000000..fed3f16
--- /dev/null
+++ b/etc/samples/provisioning/sample-bundle/src/main/scripts/build.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+
+<!-- $Id$ -->
+
+<project name="sample-bundle" basedir="." default="build">
+
+ <target name="build">
+
+ <!-- download JBossAS 6.0 dist from sourceforge and unzip it -->
+ <property name="tmp.dir" location="${java.io.tmpdir}/${user.name}"/>
+ <echo>tmp.dir="${tmp.dir}"</echo>
+ <mkdir dir="${tmp.dir}"/>
+
+ <get src="http://downloads.sourceforge.net/project/jboss/JBoss/JBoss-6.0.0.M3/jboss... "
+ dest="${tmp.dir}/jbossas.zip"
+ usetimestamp="true"/>
+ <property name="jboss.home" location="target/jbossas-petstore"/>
+ <echo>jboss.home="${jboss.home}"</echo>
+ <mkdir dir="${jboss.home}"/>
+ <unzip src="${tmp.dir}/jbossas.zip" dest="${jboss.home}">
+ <mapper>
+ <globmapper from="jboss-6.0.0.20100429-M3/*" to="*"/>
+ </mapper>
+ </unzip>
+
+ <!-- delete all server configs, except 'default' -->
+ <delete includeemptydirs="true">
+ <fileset dir="${jboss.home}/server">
+ <exclude name="default/**"/>
+ </fileset>
+ </delete>
+
+ <!-- delete docs dir and README files... -->
+ <delete dir="${jboss.home}/docs"/>
+ <delete>
+ <fileset dir="${jboss.home}" includes="*.*" />
+ </delete>
+
+ <property name="jboss.config.dir" location="${jboss.home}/server/default"/>
+
+ <echo>Copying Derby JDBC driver jar to $${jboss.home}/server/default/lib/...</echo>
+ <copy file="${settings.localRepository}/org/apache/derby/derbyclient/${derbyclient.version}/derbyclient-${derbyclient.version}.jar"
+ toDir="${jboss.config.dir}/lib" failonerror="false" verbose="true" />
+
+ <!-- copy petstore files into the jbossas install -->
+ <copy todir="${jboss.home}">
+ <fileset dir="src/main/petstore"/>
+ </copy>
+
+ <mkdir dir="target/bundle"/>
+
+ <!-- zip up our modified jbossas install - this zipfile will be used as a bundle file -->
+ <zip destfile="target/bundle/jbossas-petstore.zip" basedir="${jboss.home}"/>
+
+ <!-- copy the recipe and other bundle files into the bundle -->
+ <copy todir="target/bundle">
+ <fileset dir="src/main/bundle"/>
+ </copy>
+
+ </target>
+
+</project>
+
diff --git a/etc/samples/sample-bundle/pom.xml b/etc/samples/sample-bundle/pom.xml
deleted file mode 100644
index 6bd4a88..0000000
--- a/etc/samples/sample-bundle/pom.xml
+++ /dev/null
@@ -1,92 +0,0 @@
-<?xml version="1.0"?>
-
-<!-- $Id$ -->
-
-<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>
-
- <groupId>org.rhq.sample</groupId>
- <artifactId>rhq-sample-bundle</artifactId>
- <version>2.0</version>
- <packaging>pom</packaging>
-
- <name>RHQ Sample Bundle</name>
- <description>a sample bundle consisting of JBossAS 6.0 running the Java Petstore application</description>
-
- <scm>
- <connection>scm:git:ssh://git.fedorahosted.org/git/rhq.git/etc/modules/sample-bundle/ </connection>
- <developerConnection>scm:git:ssh://git.fedorahosted.org/git/rhq.git/etc/modules/sample-bundle/ </developerConnection>
- </scm>
-
- <properties>
- <!-- dependency versions -->
- <derbyclient.version>10.5.3.0_1</derbyclient.version>
- </properties>
-
- <dependencies>
-
- <!-- Derby JDBC driver -->
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derbyclient</artifactId>
- <version>${derbyclient.version}</version>
- </dependency>
-
- </dependencies>
-
- <build>
-
- <plugins>
-
- <plugin>
- <artifactId>maven-antrun-plugin</artifactId>
- <executions>
- <execution>
- <id>prepare-bundle</id>
- <phase>process-resources</phase>
- <configuration>
- <tasks>
- <echo>settings.localRepository=${settings.localRepository}</echo>
- <echo>project.build.outputDirectory=${project.build.outputDirectory}</echo>
- <ant antfile="src/main/scripts/build.xml">
- <property name="settings.localRepository" value="${settings.localRepository}"/>
- <property name="project.version" value="${project.version}"/>
- <property name="project.build.outputDirectory" value="${project.build.outputDirectory}"/>
- <property name="derbyclient.version" value="${derbyclient.version}"/>
- </ant>
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <configuration>
- <descriptors>
- <descriptor>src/main/scripts/assembly.xml</descriptor>
- </descriptors>
- <finalName>${project.build.finalName}</finalName>
- </configuration>
- <executions>
- <execution>
- <id>assemble-bundle</id>
- <phase>package</phase>
- <goals>
- <goal>attached</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
-
- </plugins>
- </build>
-
-</project>
-
diff --git a/etc/samples/sample-bundle/src/main/bundle/deploy.xml b/etc/samples/sample-bundle/src/main/bundle/deploy.xml
deleted file mode 100644
index 8bfec17..0000000
--- a/etc/samples/sample-bundle/src/main/bundle/deploy.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="petstore" default="main"
- xmlns:rhq="antlib:org.rhq.bundle">
-
- <rhq:bundle name="Java Petstore" version="2.0"
- description="a sample bundle consisting of JBossAS 6.0 running the Java Petstore application">
-
- <rhq:input-property
- name="jboss.bind.address"
- description="the IP address the JBoss AS server should bind to"
- required="true"/>
-
- <rhq:input-property
- name="http.port"
- description="the HTTP port the JBoss AS server should listen on"
- required="true"
- type="integer"/>
-
- <rhq:input-property
- name="https.port"
- description="the HTTPS port the JBoss AS server should listen on"
- required="true"
- type="integer"/>
-
- <rhq:deployment-unit name="appserver"
- preinstallTarget="appserver-preinstall" postinstallTarget="appserver-postinstall">
- <rhq:system-service name="jbossas-petstore" scriptFile="jbossas-init-script"
- configFile="jbossas-init-config" overwriteScript="true"
- startLevels="3,4,5" startPriority="80" stopPriority="20"/>
-
- <rhq:archive name="jbossas-petstore.zip"/>
-
- <!-- the files that should be ignored during upgrades -->
- <rhq:ignore>
- <rhq:fileset>
- <include name="server/default/data/**"/>
- <include name="server/default/logs/**"/>
- <include name="server/default/tmp/**"/>
- <include name="server/default/work/**"/>
- </rhq:fileset>
- </rhq:ignore>
- </rhq:deployment-unit>
-
- </rhq:bundle>
-
- <target name="main"/>
-
- <target name="appserver-preinstall">
- <echo>Installing Java Petstore App Server to ${rhq.deploy.dir}...</echo>
- </target>
-
- <target name="appserver-postinstall">
- <echo>Done installing Java Petstore App Server to ${rhq.deploy.dir}.</echo>
- </target>
-
-</project>
diff --git a/etc/samples/sample-bundle/src/main/bundle/jbossas-init-config b/etc/samples/sample-bundle/src/main/bundle/jbossas-init-config
deleted file mode 100644
index a2fc4c1..0000000
--- a/etc/samples/sample-bundle/src/main/bundle/jbossas-init-config
+++ /dev/null
@@ -1,69 +0,0 @@
-# Configuration file for jbossas init script that configures the
-# settings needed to start a particular JBoss AS instance.
-
-#
-# the JBoss AS installation directory (e.g. /opt/jboss-6.0.0.M1)
-# (*REQUIRED*)
-#
-JBOSS_HOME="@@rhq.deploy.dir(a)@"
-
-#
-# the args that will be passed to run.sh
-# (i.e. org.jboss.Main).
-#
-JBOSS_OPTS="-b @@jboss.bind.address(a)@"
-
-# What UNIX user the JBoss AS java process will run as.
-# (The shutdown client is always run as the invoker of the
-# init script). JBoss AS will be run as root by default, but, for
-# the sake of security, it is recommended that you chown the JBoss
-# AS installation files to a non-root user and use that use here.
-# Note, you do need to run as root if your server will listen on one
-# or more privileged (< 1024) ports. If you really do want to run as
-# root, comment out the JBOSS_USER variable completely (i.e. do not
-# set it to root). This will run the server process without "su".
-#JBOSS_USER=jboss
-
-#
-# Specify the maximum file descriptor limit, use "max" or "maximum" to use
-# the default, as queried by the system.
-#
-# Defaults to "maximum"
-#
-#MAX_FD="maximum"
-
-#
-# Specify the profiler configuration file to load.
-#
-# Default is to not load profiler configuration file.
-#
-#PROFILER=
-
-#
-# Specify the location of the Java Rntime Environment (JRE) or
-# Java Development Kit (JDK) installation directory. If not set,
-# "/usr/java/default" will be used.
-#
-#JAVA_HOME="/usr/java/default"
-
-#
-# Specify options to pass to the Java VM (if unset, a default
-# set of options will be used).
-#
-# Note, if you want to pass the default options but some of
-# your own additional options in, then set the
-# ADDITIONAL_JAVA_OPTS variable (see below), rather than JAVA_OPTS.
-#
-#JAVA_OPTS="-Xms128M -Xmx512M -XX:MaxPermSize=256M -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.net.preferIPv4Stack=true"
-
-#
-# Specify additional options to pass to the Java VM. These are passed
-# in addition to the default set of options,
-# i.e. java $JAVA_OPTS $ADDITIONAL_JAVA_OPTS ... org.jboss.Main ...
-#
-# Sample JPDA settings (uncomment either a) or b))
-# a) remote socket debugging
-#ADDITIONAL_JAVA_OPTS="-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
-# b) shared memory debugging
-#ADDITIONAL_JAVA_OPTS="-Xrunjdwp:transport=dt_shmem,server=y,suspend=n,address=jboss"
-
diff --git a/etc/samples/sample-bundle/src/main/bundle/jbossas-init-script b/etc/samples/sample-bundle/src/main/bundle/jbossas-init-script
deleted file mode 100755
index 58eb98e..0000000
--- a/etc/samples/sample-bundle/src/main/bundle/jbossas-init-script
+++ /dev/null
@@ -1,328 +0,0 @@
-#!/bin/bash
-#
-# jbossas - This shell script takes care of starting and stopping
-# a JBoss Application Server (AS) instance on a Red Hat
-# Linux system. It can be run as a system service (init
-# script) and/or run manually.
-#
-# chkconfig: 345 84 16
-# description: JBoss AS server
-# processname: java
-# pidfile: /var/run/jbossas.pid
-
-# Source init-script function library.
-FUNCTIONS=/etc/rc.d/init.d/functions
-if [ ! -f "$FUNCTIONS" ]; then
- echo "Functions library ($FUNCTIONS) not found." >&2
- exit 1
-fi
-. $FUNCTIONS
-
-# Find the name of this service (e.g. "jbossas").
-NAME=`basename $0`
-if [ ${NAME:0:1} = "S" -o ${NAME:0:1} = "K" ]; then
- NAME=${NAME:3}
-fi
-
-# Set names of pid, lock, and log files - all based on the service name.
-PIDFILE="/var/run/$NAME.pid"
-LOCKFILE="/var/lock/subsys/$NAME"
-LOGFILE="/var/log/$NAME.log"
-
-# Set defaults for optional configuration variables.
-JAVA_HOME="/usr/java/default"
-JAVA_OPTS="-Xms128M -Xmx512M -XX:MaxPermSize=256M"
-JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
-# (Prefer IPv4 stack as as temporary workaround to avoid 'all' config startup
-# issues from IPv4 multicast addresses. See JBAS-7936.)
-JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
-
-# Source the service's config file, potentially overriding the defaults set
-# above.
-CONFIG="/etc/sysconfig/${NAME}"
-if [ ! -f "$CONFIG" ]; then
- echo "Required configuration file $CONFIG not found." >&2
- exit 1
-fi
-. "$CONFIG"
-
-# Bail out if required variables were not set in the config file.
-if [ -z "$JBOSS_HOME" ]; then
- echo "Required variable JBOSS_HOME was not set in $CONFIG." >&2
- exit 1
-fi
-
-
-start()
-{
- # See if the service is already running, and, if so, exit with an error.
- PID=`pidfileofproc "$NAME"`
- if [ -n "$PID" ]; then
- # pid file exists - see if process is actually running.
- kill -0 $PID 2>/dev/null
- if [ $? -eq 0 ]; then
- echo "$NAME service is already running (pid=$PID)." >&2
- exit 1
- else
- echo "Removing bogus pid file $PIDFILE..."
- rm -f "$PIDFILE"
- if [ -f "$LOCKFILE" ]; then
- echo "Removing bogus lock file $LOCKFILE..."
- rm -f "$LOCKFILE"
- fi
- fi
- fi
-
- # Check that JAVA_HOME is valid.
- JAVA="$JAVA_HOME/bin/java"
- if [ ! -f "$JAVA" ]; then
- echo "Java not found at $JAVA - please set JAVA_HOME in $CONFIG." >&2
- exit 1
- fi
- if [ ! -x "$JAVA" ]; then
- echo "$JAVA is not executable." >&2
- exit 5
- fi
-
- # Setup the classpath
- JBOSS_BOOT_CLASSPATH="$JBOSS_HOME/bin/run.jar"
- if [ ! -f "$JBOSS_BOOT_CLASSPATH" ]; then
- echo "Missing required file: $JBOSS_BOOT_CLASSPATH" >&2
- exit 1
- fi
-
- # By default, Tomcat uses the JDT Compiler for compiling JSPs. However,
- # include tools.jar in the classpath if we can find it under JAVA_HOME
- # or if the user specified it via the JAVAC_JAR variable.
- JAVAC_JAR_FILE="${JAVAC_JAR:-$JAVA_HOME/lib/tools.jar}"
- if [ ! -f "$JAVAC_JAR_FILE" ]; then
- [ -n "$JAVAC_JAR" ] && echo "Missing javac jar file $JAVAC_JAR as defined by the JAVAC_JAR variable. Unexpected results may occur."
- unset JAVAC_JAR_FILE
- fi
-
- # If -server not set in JAVA_OPTS, set it, if supported.
- SERVER_SET=`echo $JAVA_OPTS | grep "\-server"`
- if [ -z "$SERVER_SET" ]; then
- # Check for Sun JVM w/ HotSpot support.
- HAS_HOTSPOT=`"$JAVA" -version 2>&1 | grep -i HotSpot`
-
- # Check for OpenJDK JVM w/ server support.
- HAS_OPENJDK=`"$JAVA" -version 2>&1 | grep -i OpenJDK`
-
- # Enable -server if we have Hotspot or OpenJDK, unless we can't
- if [ -n "$HAS_HOTSPOT" ] || [ -n "$HAS_OPENJDK" ]; then
- JAVA_OPTS="-server $JAVA_OPTS"
- fi
- fi
-
- # Setup JBoss-specific properties.
- JAVA_OPTS="-Dprogram.name=$NAME $JAVA_OPTS"
-
- # Setup JBoss Native library path.
- unset JBOSS_NATIVE_DIR
- for DIR in "$JBOSS_HOME/../native/lib" "$JBOSS_HOME/../native" "$JBOSS_HOME/../native/lib64" "$JBOSS_HOME/native/lib64" "$JBOSS_HOME/native/bin" "$JBOSS_HOME/bin/native"; do
- if [ -d "$DIR" ]; then
- JBOSS_NATIVE_DIR=`cd "$DIR/.." && pwd`
- break
- fi
- done
- if [ -d "$JBOSS_NATIVE_DIR" ]; then
- IS_64_BIT_JVM=`"$JAVA" $JAVA_OPTS -version 2>&1 | grep -i 64-bit`
- if [ -n "$IS_64_BIT_JVM" ]; then
- JBOSS_NATIVE_DIR="$JBOSS_NATIVE_DIR/lib64"
- else
- JBOSS_NATIVE_DIR="$JBOSS_NATIVE_DIR/lib"
- fi
- LD_LIBRARY_PATH="$JBOSS_NATIVE_DIR${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
- export LD_LIBRARY_PATH
- JAVA_OPTS="$JAVA_OPTS -Djava.library.path=$LD_LIBRARY_PATH"
- fi
-
- # Setup the Java endorsed dirs.
- JBOSS_ENDORSED_DIRS="$JBOSS_HOME/lib/endorsed"
- JAVA_OPTS="$JAVA_OPTS -Djava.endorsed.dirs=\"$JBOSS_ENDORSED_DIRS\""
-
- # Setup the Java classpath.
- JBOSS_CLASSPATH="${JBOSS_CLASSPATH:+$JBOSS_CLASSPATH:$JBOSS_BOOT_CLASSPATH}"
- JBOSS_CLASSPATH="${JBOSS_CLASSPATH:-$JBOSS_BOOT_CLASSPATH}"
- JBOSS_CLASSPATH="$JBOSS_CLASSPATH${JAVAC_JAR_FILE:+:$JAVAC_JAR_FILE}"
- JAVA_OPTS="$JAVA_OPTS -classpath \"$JBOSS_CLASSPATH\""
-
- # Display a summary of our environment if we're associated with a terminal.
- if tty -s; then
- echo "========================================================================="; echo
- echo " JBoss AS Bootstrap Environment" ; echo
- echo " JBOSS_HOME: $JBOSS_HOME" ; echo
- echo " JAVA: $JAVA" ; echo
- echo " JAVA_OPTS: $JAVA_OPTS" ; echo
- echo " JBOSS_OPTS: $JBOSS_OPTS" ; echo
- echo "========================================================================="; echo
- fi
-
- # JBoss AS expects its current working dir to be $JBOSS_HOME/bin
- cd "$JBOSS_HOME/bin"
-
- # JBoss AS expects JBOSS_HOME to be set in its environment.
- export JBOSS_HOME
-
- # We only need to bother with nohup if we're associated with a terminal.
- if tty -s; then
- NOHUP=nohup
- else
- unset NOHUP
- fi
-
- # If they set NICELEVEL in the config file, honor it.
- [ -n "${NICELEVEL:-}" ] && NICE="nice -n $NICELEVEL"
-
- # If JBOSS_USER was specified in the config and current user is root, we
- # want to setuid the JBoss AS process to JBOSS_USER.
- if [ -n "$JBOSS_USER" ] && [ "$EUID" -eq 0 ]; then
- # For SELinux we need to use 'runuser', not 'su'.
- if [ -x /sbin/runuser ]; then
- SU=runuser
- else
- SU=su
- fi
- else
- unset SU
- fi
-
- if [ -n "$SU" ]; then
- WRAPPER="$NOHUP $NICE $SU -s /bin/bash - $JBOSS_USER -c"
- else
- WRAPPER="$NOHUP $NICE bash -c"
- fi
-
- # Make sure log file exists and has correct ownership and permissions.
- if [ "$EUID" -eq 0 ]; then
- touch -a "$LOGFILE" || exit 4
- [ -n "$JBOSS_USER" ] && chown $JBOSS_USER "$LOGFILE"
- [ -n "$JBOSS_GROUP" ] && chgrp $JBOSS_GROUP "$LOGFILE"
- chmod u=rw "$LOGFILE"
- [ -n "$JBOSS_GROUP" ] && chmod g+r "$LOGFILE"
- [ -x /sbin/restorecon ] && /sbin/restorecon "$LOGFILE"
- fi
-
- # Make sure pid file has correct ownership and permissions.
- if [ "$EUID" -eq 0 ] && [ -f "$PIDFILE" ]; then
- [ -n "$JBOSS_USER" ] && chown $JBOSS_USER "$PIDFILE"
- [ -n "$JBOSS_GROUP" ] && chgrp $JBOSS_GROUP "$PIDFILE"
- chmod u=rw "$PIDFILE"
- [ -n "$JBOSS_GROUP" ] && chmod g+r
- [ -x /sbin/restorecon ] && /sbin/restorecon "$PIDFILE"
- fi
-
- echo -n "Starting $NAME service: "
-
- # Make sure to escape the $$'s within the subshell to prevent our own shell
- # from evaluating them and writing our own pid to the pid file.
- $WRAPPER "echo \$\$ >\"$PIDFILE\" || ( echo \"Failed to write pid (\$\$) to $PIDFILE.\" >&2; exit 4 ); exec \"$JAVA\" $JAVA_OPTS org.jboss.Main $JBOSS_OPTS" >>"$LOGFILE" 2>&1 &
- if [ $? -ne 0 ]; then
- failure "$NAME startup"
- echo
- EXIT_STATUS=$?
- fi
-
- # Wait a few seconds and then check that the process is running. Note, this
- # will *not* verify that JBoss AS started properly without any configuration
- # or deployment errors.
- sleep 3
-
- if pidfileofproc "$NAME"; then
- success "$NAME startup"
- echo
- touch "$LOCKFILE"
- EXIT_STATUS=0
- else
- failure "$NAME startup"
- echo
- EXIT_STATUS=1
- fi
-}
-
-stop()
-{
- # See if service is running, and, if not, exit without any error.
- PID=`pidfileofproc "$NAME"`
- unset NOT_RUNNING
- if [ -z "$PID" ]; then
- NOT_RUNNING=1
- else
- # pid file exists - see if process is actually running.
- kill -0 $PID 2>/dev/null
- if [ $? -ne 0 ]; then
- NOT_RUNNING=1
- if [ -f "$PIDFILE" ]; then
- echo "Removing bogus pid file $PIDFILE..."
- rm -f "$PIDFILE"
- fi
- if [ -f "$LOCKFILE" ]; then
- echo "Removing bogus lock file $LOCKFILE..."
- rm -f "$LOCKFILE"
- fi
- fi
- fi
- if [ -n "$NOT_RUNNING" ]; then
- echo "$NAME service is not running."
- exit 0
- fi
-
- echo -n "Stopping $NAME service: "
- killproc -d 30 "$NAME"
- EXIT_STATUS=$?
- if [ $EXIT_STATUS -eq 0 ]; then
- rm -f "$LOCKFILE"
- fi
- echo
-}
-
-# NOTE: We don't name this function 'status', since that would override the
-# 'status function defined in /etc/init.d/functions.
-_status()
-{
- status "$NAME"
- EXIT_CODE=$?
-}
-
-restart()
-{
- stop || exit $?
- start
-}
-
-condrestart()
-{
- [ -f "$PIDFILE" ] && restart
-}
-
-usage()
-{
- echo "Usage: $NAME {start|stop|status|restart|condrestart}" >&2
- EXIT_CODE=2
-}
-
-# The
-case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- status)
- _status
- ;;
- restart)
- restart
- ;;
- condrestart)
- condrestart
- ;;
- *)
- usage
- ;;
-esac
-
-exit $EXIT_STATUS
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/petstore-db.changelog.xml b/etc/samples/sample-bundle/src/main/petstore/petstore-db.changelog.xml
deleted file mode 100644
index 42ced88..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/petstore-db.changelog.xml
+++ /dev/null
@@ -1,187 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9 " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9 http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd ">
- <changeSet author="ips (generated)" id="1272025063915-1">
- <createTable schemaName="APP" tableName="ADDRESS">
- <column name="ADDRESSID" type="VARCHAR(10)">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173635960"/>
- </column>
- <column name="STREET1" type="VARCHAR(55)">
- <constraints nullable="false"/>
- </column>
- <column name="STREET2" type="VARCHAR(55)"/>
- <column name="CITY" type="VARCHAR(55)">
- <constraints nullable="false"/>
- </column>
- <column name="STATE" type="VARCHAR(25)">
- <constraints nullable="false"/>
- </column>
- <column name="ZIP" type="VARCHAR(5)">
- <constraints nullable="false"/>
- </column>
- <column name="LATITUDE" type="DECIMAL(14,10)">
- <constraints nullable="false"/>
- </column>
- <column name="LONGITUDE" type="DECIMAL(14,10)">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-2">
- <createTable schemaName="APP" tableName="CATEGORY">
- <column name="CATEGORYID" type="VARCHAR(10)">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173635550"/>
- </column>
- <column name="NAME" type="VARCHAR(25)">
- <constraints nullable="false"/>
- </column>
- <column name="DESCRIPTION" type="VARCHAR(255)">
- <constraints nullable="false"/>
- </column>
- <column name="IMAGEURL" type="VARCHAR(55)"/>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-3">
- <createTable schemaName="APP" tableName="ID_GEN">
- <column name="GEN_KEY" type="VARCHAR(20)">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636590"/>
- </column>
- <column name="GEN_VALUE" type="INT">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-4">
- <createTable schemaName="APP" tableName="ITEM">
- <column name="ITEMID" type="VARCHAR(10)">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636230"/>
- </column>
- <column name="PRODUCTID" type="VARCHAR(10)">
- <constraints nullable="false"/>
- </column>
- <column name="NAME" type="VARCHAR(30)">
- <constraints nullable="false"/>
- </column>
- <column name="DESCRIPTION" type="VARCHAR(500)">
- <constraints nullable="false"/>
- </column>
- <column name="IMAGEURL" type="VARCHAR(55)"/>
- <column name="IMAGETHUMBURL" type="VARCHAR(55)"/>
- <column name="PRICE" type="DECIMAL(14,2)">
- <constraints nullable="false"/>
- </column>
- <column name="ADDRESS_ADDRESSID" type="VARCHAR(10)">
- <constraints nullable="false"/>
- </column>
- <column name="CONTACTINFO_CONTACTINFOID" type="VARCHAR(10)">
- <constraints nullable="false"/>
- </column>
- <column name="TOTALSCORE" type="INT">
- <constraints nullable="false"/>
- </column>
- <column name="NUMBEROFVOTES" type="INT">
- <constraints nullable="false"/>
- </column>
- <column name="DISABLED" type="INT">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-5">
- <createTable schemaName="APP" tableName="PRODUCT">
- <column name="PRODUCTID" type="VARCHAR(10)">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173635740"/>
- </column>
- <column name="CATEGORYID" type="VARCHAR(10)">
- <constraints nullable="false"/>
- </column>
- <column name="NAME" type="VARCHAR(25)">
- <constraints nullable="false"/>
- </column>
- <column name="DESCRIPTION" type="VARCHAR(255)">
- <constraints nullable="false"/>
- </column>
- <column name="IMAGEURL" type="VARCHAR(55)"/>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-6">
- <createTable schemaName="APP" tableName="SELLERCONTACTINFO">
- <column name="CONTACTINFOID" type="VARCHAR(10)">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636080"/>
- </column>
- <column name="LASTNAME" type="VARCHAR(24)">
- <constraints nullable="false"/>
- </column>
- <column name="FIRSTNAME" type="VARCHAR(24)">
- <constraints nullable="false"/>
- </column>
- <column name="EMAIL" type="VARCHAR(24)">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-7">
- <createTable schemaName="APP" tableName="TAG">
- <column name="TAGID" type="INT">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636830"/>
- </column>
- <column name="TAG" type="VARCHAR(30)">
- <constraints nullable="false"/>
- </column>
- <column name="REFCOUNT" type="INT">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-8">
- <createTable schemaName="APP" tableName="TAG_ITEM">
- <column name="TAGID" type="INT">
- <constraints nullable="false"/>
- </column>
- <column name="ITEMID" type="VARCHAR(10)">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-9">
- <createTable schemaName="APP" tableName="ZIPLOCATION">
- <column name="ZIPCODE" type="INT">
- <constraints nullable="false" primaryKey="true" primaryKeyName="SQL100422173636710"/>
- </column>
- <column name="CITY" type="VARCHAR(30)">
- <constraints nullable="false"/>
- </column>
- <column name="STATE" type="VARCHAR(2)">
- <constraints nullable="false"/>
- </column>
- </createTable>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-10">
- <createIndex indexName="SQL100422173636831" schemaName="APP" tableName="TAG" unique="true">
- <column name="TAG"/>
- </createIndex>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-11">
- <createIndex indexName="SQL100422173637010" schemaName="APP" tableName="TAG_ITEM" unique="true">
- <column name="TAGID"/>
- <column name="ITEMID"/>
- </createIndex>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-12">
- <addForeignKeyConstraint baseColumnNames="ADDRESS_ADDRESSID" baseTableName="ITEM" baseTableSchemaName="APP" constraintName="SQL100422173636231" deferrable="false" initiallyDeferred="false" referencedColumnNames="ADDRESSID" referencedTableName="ADDRESS" referencedTableSchemaName="APP"/>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-13">
- <addForeignKeyConstraint baseColumnNames="CONTACTINFO_CONTACTINFOID" baseTableName="ITEM" baseTableSchemaName="APP" constraintName="SQL100422173636233" deferrable="false" initiallyDeferred="false" referencedColumnNames="CONTACTINFOID" referencedTableName="SELLERCONTACTINFO" referencedTableSchemaName="APP"/>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-14">
- <addForeignKeyConstraint baseColumnNames="PRODUCTID" baseTableName="ITEM" baseTableSchemaName="APP" constraintName="SQL100422173636232" deferrable="false" initiallyDeferred="false" referencedColumnNames="PRODUCTID" referencedTableName="PRODUCT" referencedTableSchemaName="APP"/>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-15">
- <addForeignKeyConstraint baseColumnNames="CATEGORYID" baseTableName="PRODUCT" baseTableSchemaName="APP" constraintName="SQL100422173635741" deferrable="false" initiallyDeferred="false" referencedColumnNames="CATEGORYID" referencedTableName="CATEGORY" referencedTableSchemaName="APP"/>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-16">
- <addForeignKeyConstraint baseColumnNames="ITEMID" baseTableName="TAG_ITEM" baseTableSchemaName="APP" constraintName="SQL100422173637011" deferrable="false" initiallyDeferred="false" referencedColumnNames="ITEMID" referencedTableName="ITEM" referencedTableSchemaName="APP"/>
- </changeSet>
- <changeSet author="ips (generated)" id="1272025063915-17">
- <addForeignKeyConstraint baseColumnNames="TAGID" baseTableName="TAG_ITEM" baseTableSchemaName="APP" constraintName="SQL100422173637012" deferrable="false" initiallyDeferred="false" referencedColumnNames="TAGID" referencedTableName="TAG" referencedTableSchemaName="APP"/>
- </changeSet>
-</databaseChangeLog>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore-ds.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore-ds.xml
deleted file mode 100644
index ae5ea7c..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore-ds.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!-- The Derby embedded database JCA connection factory config -->
-<!-- See http://www.jboss.org/community/wiki/Multiple1PC for information about local-tx-datasource -->
-<!-- $Id: derby-ds.xml 97536 2009-12-08 14:05:07Z jesper.pedersen $ -->
-
-<datasources>
-
- <local-tx-datasource>
-
- <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
- <!-- Datasources are not available outside the virtual machine -->
- <jndi-name>jdbc/PetstoreDB</jndi-name>
-
- <!-- for in-process persistent db, saved when jboss stops. The
- org.jboss.jdbc.DerbyDatabase mbean is necessary for properly db shutdown -->
- <connection-url>jdbc:derby://localhost:1527/petstore;create=true</connection-url>
-
- <!-- The driver class -->
- <driver-class>org.apache.derby.jdbc.ClientDriver</driver-class>
-
- <!-- The login and password -->
- <user-name>APP</user-name>
- <password>APP</password>
-
- <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
- <min-pool-size>5</min-pool-size>
-
- <!-- The maximum connections in a pool/sub-pool -->
- <max-pool-size>20</max-pool-size>
-
- <!-- The time before an unused connection is destroyed -->
- <idle-timeout-minutes>5</idle-timeout-minutes>
-
- <!-- Whether to check all statements are closed when the connection is returned to the pool,
- this is a debugging feature that should be turned off in production -->
- <track-statements/>
-
- </local-tx-datasource>
-
-</datasources>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/META-INF/application.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/META-INF/application.xml
deleted file mode 100644
index eadc0f4..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/META-INF/application.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<application xmlns="http://java.sun.com/xml/ns/j2ee " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd " version="1.4">
-
- <display-name>Java Pet Store</display-name>
-
- <module>
- <web>
- <web-uri>petstore.war</web-uri>
- <context-root>/petstore</context-root>
- </web>
- </module>
-
- <module>
- <ejb>petstore-ejb.jar</ejb>
- </module>
-
-</application>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/META-INF/persistence.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/META-INF/persistence.xml
deleted file mode 100644
index 76e0703..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/META-INF/persistence.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence "
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
- xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ">
-
- <persistence-unit name="PetstorePu">
- <description>Petstore Persistence Unit</description>
- <provider>org.hibernate.ejb.HibernatePersistence</provider>
- <jta-data-source>java:jdbc/PetstoreDB</jta-data-source>
- <non-jta-data-source>java:jdbc/PetstoreDB</non-jta-data-source>
- <properties>
- <property name="hibernate.dialect" value="org.hibernate.dialect.DerbyDialect"/>
- <property name="hibernate.connection.username" value="APP"/>
- <property name="hibernate.connection.password" value="APP"/>
- <property name="hibernate.format_sql" value="true"/>
- </properties>
- </persistence-unit>
-
-</persistence>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Address.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Address.class
deleted file mode 100644
index c9dc392..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Address.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Category.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Category.class
deleted file mode 100644
index be2275b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Category.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Item.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Item.class
deleted file mode 100644
index 8842106..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Item.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Product.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Product.class
deleted file mode 100644
index dda3feb..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Product.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/SellerContactInfo.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/SellerContactInfo.class
deleted file mode 100644
index b5dbe74..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/SellerContactInfo.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Tag.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Tag.class
deleted file mode 100644
index 1b5785b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/Tag.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/ZipLocation.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/ZipLocation.class
deleted file mode 100644
index 591af10..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore-ejb.jar/com/sun/javaee/blueprints/petstore/model/ZipLocation.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/META-INF/MANIFEST.MF b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/META-INF/MANIFEST.MF
deleted file mode 100644
index 7a679c4..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,4 +0,0 @@
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.1
-Created-By: 16.0-b13 (Sun Microsystems Inc.)
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/BlueFilter.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/BlueFilter.class
deleted file mode 100644
index abac5a6..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/BlueFilter.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/CaptchaSingleton.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/CaptchaSingleton.class
deleted file mode 100644
index 7d7af77..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/CaptchaSingleton.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/RandomString.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/RandomString.class
deleted file mode 100644
index b8bfa4d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/RandomString.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/SimpleCaptcha.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/SimpleCaptcha.class
deleted file mode 100644
index 8c469f4..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/captcha/SimpleCaptcha.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AddressBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AddressBean.class
deleted file mode 100644
index e2b4ca5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AddressBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AutocompleteBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AutocompleteBean.class
deleted file mode 100644
index 223289e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/AutocompleteBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/CaptchaValidateFilter.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/CaptchaValidateFilter.class
deleted file mode 100644
index 61f3863..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/CaptchaValidateFilter.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerAction.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerAction.class
deleted file mode 100644
index 7c149e3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerAction.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerServlet.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerServlet.class
deleted file mode 100644
index c5fb59a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/ControllerServlet.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/EntryFilter.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/EntryFilter.class
deleted file mode 100644
index 65d4cdb..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/EntryFilter.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/FileUploadBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/FileUploadBean.class
deleted file mode 100644
index 1ee72ad..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/FileUploadBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CaptchaAction.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CaptchaAction.class
deleted file mode 100644
index f56c35e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CaptchaAction.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CatalogXmlAction.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CatalogXmlAction.class
deleted file mode 100644
index 56fc53d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/CatalogXmlAction.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/DefaultControllerAction.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/DefaultControllerAction.class
deleted file mode 100644
index ee55705..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/DefaultControllerAction.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/ImageAction.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/ImageAction.class
deleted file mode 100644
index 30e70ab..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/ImageAction.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/TagXmlAction.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/TagXmlAction.class
deleted file mode 100644
index dd5b7c1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/controller/actions/TagXmlAction.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/mapviewer/MapBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/mapviewer/MapBean.class
deleted file mode 100644
index 03400b2..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/mapviewer/MapBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/CatalogFacade.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/CatalogFacade.class
deleted file mode 100644
index 23a204c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/CatalogFacade.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/FileUploadResponse.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/FileUploadResponse.class
deleted file mode 100644
index 18f8102..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/FileUploadResponse.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/PayPalBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/PayPalBean.class
deleted file mode 100644
index b6e2b0d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/PayPalBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/RatingBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/RatingBean.class
deleted file mode 100644
index be21196..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/model/RatingBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoCoder.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoCoder.class
deleted file mode 100644
index 185dc01..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoCoder.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoPoint.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoPoint.class
deleted file mode 100644
index 18b3463..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/proxy/GeoPoint.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser$CallbackHandler.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser$CallbackHandler.class
deleted file mode 100644
index 0c448bf..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser$CallbackHandler.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser.class
deleted file mode 100644
index 4a19fad..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/HTMLParser.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/IndexDocument.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/IndexDocument.class
deleted file mode 100644
index a8b6521..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/IndexDocument.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/Indexer.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/Indexer.class
deleted file mode 100644
index 2b42389..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/Indexer.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SQLParser.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SQLParser.class
deleted file mode 100644
index 8ab0084..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SQLParser.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchBean.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchBean.class
deleted file mode 100644
index a4cc2bf..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchBean.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchIndex.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchIndex.class
deleted file mode 100644
index 50007c4..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/SearchIndex.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/UpdateIndex.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/UpdateIndex.class
deleted file mode 100644
index 1ef9761..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/search/UpdateIndex.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/ImageScaler.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/ImageScaler.class
deleted file mode 100644
index 5570fac..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/ImageScaler.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/LogStrings.properties b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/LogStrings.properties
deleted file mode 100644
index 112905d..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/LogStrings.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-index.exception=An exception was encountered while indexing the data. Please checked to make sure there indexes are not locked by another user.
-index.sql.statement=Select statement used for retrieving database data "{0}"
-search.string=Searching indexes for string "{0}"
-search.results=Search String returned "{0}" hits
-search.exception=An exception was encountered while performing the search. Please check to make sure the indexes exist.
-fileupload.persist.exception=Error persisting seller data
-fileupload.rollback.exception=Persisting seller data, rollback failed
-geocoder.lookup.exception=The GeoCode address lookup from Yahoo has returned and Exception
-image_does_not_exist=The image doesn't exist in the default image directory or in the upload directory "{0}"
-resource_bundle_does_not_exist=The MessageStrings.properties file does not exist!.
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/MessageStrings.properties b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/MessageStrings.properties
deleted file mode 100644
index 7ca2d9d..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/MessageStrings.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-invalid_contact_firstname=First Name is required.
-invalid_contact_lastname=Last Name is required.
-invalid_address_street1=Street is required.
-invalid_address_city=City is required.
-invalid_address_state=State is required.
-invalid_address_zip=Zip Code is required.
-invalid_item_name=Pet Name is required.
-invalid_item_description=The Description should exist and the field can't have a '<script>' and/or a '<link>' tag in it.
-invalid_item_price=Price should should exist and be a number greater or equal to 0.
-invalid_item_imageurl=The image upload file must exist and be of type '.jpg', '.gif' or '.png'.
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreConstants.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreConstants.class
deleted file mode 100644
index 5aa4b42..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreConstants.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreUtil.class b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreUtil.class
deleted file mode 100644
index a521d71..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/classes/com/sun/javaee/blueprints/petstore/util/PetstoreUtil.class and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/faces-config.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/faces-config.xml
deleted file mode 100644
index 22f03df..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/faces-config.xml
+++ /dev/null
@@ -1,94 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
-<!-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at:
- http://developer.sun.com/berkeley_license.html
- $Id: faces-config.xml,v 1.13 2006/05/03 22:03:20 inder Exp $ -->
-
-<faces-config xmlns="http://java.sun.com/xml/ns/javaee "
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance "
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd "
- version="1.2">
- <!-- ========== Application Wide Features ================================ -->
-
- <!-- ========== Managed Beans ============================================ -->
- <managed-bean>
- <managed-bean-name>SearchBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.search.SearchBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>RatingBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.model.RatingBean</managed-bean-class>
- <managed-bean-scope>request</managed-bean-scope>
- <managed-property>
- <property-name>itemId</property-name>
- <value>#{param.itemIdBinding}</value>
- </managed-property>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>PayPalBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.model.PayPalBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>FileUploadBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.controller.FileUploadBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>MapBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.mapviewer.MapBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>AutocompleteBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.controller.AutocompleteBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
- <managed-bean>
- <managed-bean-name>AddressBean</managed-bean-name>
- <managed-bean-class>com.sun.javaee.blueprints.petstore.controller.AddressBean</managed-bean-class>
- <managed-bean-scope>session</managed-bean-scope>
- </managed-bean>
-
- <!-- ========== Navigation Rules ========================================= -->
- <navigation-rule>
- <from-view-id>/mapLocation.jsp</from-view-id>
- <navigation-case>
- <from-outcome>map</from-outcome>
- <to-view-id>/map.jsp</to-view-id>
- </navigation-case>
- </navigation-rule>
- <navigation-rule>
- <from-view-id>/mapAll.jsp</from-view-id>
- <navigation-case>
- <from-outcome>map</from-outcome>
- <to-view-id>/map.jsp</to-view-id>
- </navigation-case>
- </navigation-rule>
- <navigation-rule>
- <from-view-id>/map.jsp</from-view-id>
- <navigation-case>
- <to-view-id>/mapLocation.jsp</to-view-id>
- </navigation-case>
- </navigation-rule>
- <navigation-rule>
- <from-view-id>/search.jsp</from-view-id>
- <navigation-case>
- <from-outcome>displayResults</from-outcome>
- <to-view-id>/search.jsp</to-view-id>
- </navigation-case>
- <navigation-case>
- <from-outcome>map</from-outcome>
- <to-view-id>/map.jsp</to-view-id>
- </navigation-case>
- </navigation-rule>
-
-</faces-config>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/jboss-web.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/jboss-web.xml
deleted file mode 100644
index 0862993..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/jboss-web.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<jboss-web>
- <resource-ref>
- <res-ref-name>jdbc/PetstoreDB</res-ref-name>
- <res-type>javax.sql.DataSource</res-type>
- <jndi-name>java:jdbc/PetstoreDB</jndi-name>
- </resource-ref>
-</jboss-web>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/bp-ui-5.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/bp-ui-5.jar
deleted file mode 100644
index f6bd6d2..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/bp-ui-5.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-fileupload-1.1.1.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-fileupload-1.1.1.jar
deleted file mode 100644
index fc5763d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-fileupload-1.1.1.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-io-1.2.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-io-1.2.jar
deleted file mode 100644
index b2867cd..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-io-1.2.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-logging-1.1.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-logging-1.1.jar
deleted file mode 100644
index 2ff9bbd..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/commons-logging-1.1.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/jdom.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/jdom.jar
deleted file mode 100644
index 288e64c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/jdom.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/lucene-core-2.0.0.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/lucene-core-2.0.0.jar
deleted file mode 100644
index db6456f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/lucene-core-2.0.0.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-0.8.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-0.8.jar
deleted file mode 100644
index 27d2ad3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-0.8.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-fetcher-0.7.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-fetcher-0.7.jar
deleted file mode 100644
index c2a26da..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/rome-fetcher-0.7.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/shale-remoting.jar b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/shale-remoting.jar
deleted file mode 100644
index 128045d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/lib/shale-remoting.jar and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/sun-web.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/sun-web.xml
deleted file mode 100644
index a9c411b..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/sun-web.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 Servlet 2.5//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_5-0.dtd ">
-<sun-web-app error-url="">
- <context-root>/petstore</context-root>
- <class-loader delegate="true"/>
- <jsp-config>
- <property name="classdebuginfo" value="true">
- <description>Enable debug info compilation in the generated servlet class</description>
- </property>
- <property name="mappedfile" value="true">
- <description>Maintain a one-to-one correspondence between static content and the generated servlet class' java code</description>
- </property>
- </jsp-config>
-</sun-web-app>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/web.xml b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/web.xml
deleted file mode 100644
index 6c65069..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/WEB-INF/web.xml
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at:
- http://developer.sun.com/berkeley_license.html
- $Id: web.xml,v 1.27 2007/04/18 19:25:09 smitha Exp $ -->
-<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee " xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd ">
-
- <display-name>Petstore</display-name>
- <filter>
- <filter-name>CaptchaValidateFilter</filter-name>
- <filter-class>com.sun.javaee.blueprints.petstore.controller.CaptchaValidateFilter</filter-class>
- </filter>
- <filter>
- <filter-name>EntryFilter</filter-name>
- <filter-class>com.sun.javaee.blueprints.petstore.controller.EntryFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>EntryFilter</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- <filter-mapping>
- <filter-name>CaptchaValidateFilter</filter-name>
- <url-pattern>/faces/dynamic/bpui_fileupload_handler/handleFileUpload</url-pattern>
- </filter-mapping>
- <listener>
- <listener-class>com.sun.javaee.blueprints.petstore.model.CatalogFacade</listener-class>
- </listener>
-
- <servlet>
- <display-name>ControllerServlet</display-name>
- <servlet-name>ControllerServlet</servlet-name>
- <servlet-class>com.sun.javaee.blueprints.petstore.controller.ControllerServlet</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>ControllerServlet</servlet-name>
- <url-pattern>/catalog</url-pattern>
- </servlet-mapping>
-
- <servlet-mapping>
- <servlet-name>ControllerServlet</servlet-name>
- <url-pattern>/controller</url-pattern>
- </servlet-mapping>
-
- <context-param>
- <description>
- Google Maps authorization key for "http://localhost:8080/ "
- To use a another URL a new map key will have to be generated from http://www.google.com/apis/maps/
- </description>
- <param-name>com.sun.j2ee.blueprints.ui.mapviewer.KEY</param-name>
- <param-value>ABQIAAAAyQYKk4__l80DyIsqLPvvuxTwM0brOpm-All5BF6PoaKBxRWWERSt2NPUufvDhWGdrb-pCzTZQ2vi2A</param-value>
- </context-param>
-
- <context-param>
- <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
- <param-value>server</param-value>
- </context-param>
-
- <context-param>
- <param-name>com.sun.faces.validateXml</param-name>
- <param-value>false</param-value>
- </context-param>
-
- <context-param>
- <param-name>com.sun.faces.verifyObjects</param-name>
- <param-value>false</param-value>
- </context-param>
-
- <context-param>
- <param-name>javax.faces.CONFIG_FILES</param-name>
- <param-value>/WEB-INF/faces-config.xml</param-value>
- </context-param>
-
- <!-- proxy for mapviewer -->
- <context-param>
- <param-name>proxyHost</param-name>
- <param-value></param-value>
- </context-param>
- <context-param>
- <param-name>proxyPort</param-name>
- <param-value></param-value>
- </context-param>
- <!-- filter init-param not working so use servlet context -->
- <context-param>
- <param-name>entryPages</param-name>
- <param-value>.jpg|.gif|index.html|index.jsp|fileupload.jsp|search.jsp|catalog.jsp|mapAll.jsp|tag.jsp|news.jsp</param-value>
- </context-param>
-
-
- <!-- Faces Servlet -->
- <servlet>
- <servlet-name>Faces Servlet</servlet-name>
- <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <!-- Faces Servlet Mapping -->
- <servlet-mapping>
- <servlet-name>Faces Servlet</servlet-name>
- <url-pattern>/faces/*</url-pattern>
- </servlet-mapping>
-
- <!-- need datasource for indexing Lucene search engine -->
- <servlet-mapping>
- <servlet-name>ControllerServlet</servlet-name>
- <url-pattern>/faces/CaptchaServlet</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>ControllerServlet</servlet-name>
- <url-pattern>/ImageServlet/*</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>ControllerServlet</servlet-name>
- <url-pattern>/TagServlet/*</url-pattern>
- </servlet-mapping>
- <error-page>
- <exception-type>java.lang.RuntimeException</exception-type>
- <location>/systemerror.jsp</location>
- </error-page>
- <resource-ref>
- <res-ref-name>jdbc/PetstoreDB</res-ref-name>
- <res-type>javax.sql.DataSource</res-type>
- <res-auth>Container</res-auth>
- <res-sharing-scope>Shareable</res-sharing-scope>
- </resource-ref>
-</web-app>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.css b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.css
deleted file mode 100644
index 14c6ed0..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.css
+++ /dev/null
@@ -1 +0,0 @@
-.accordion {
width:150px;
height:400px;
border-width:1px;
border-style:solid;
border-color:black;
background:#404040;
}
.accordionBody {
width:160px;
height:400px;
border-width:1px;
border-style:solid;
border-color:black;
background:#404040;
}
.accordionTitle {
vertical-align: top;
padding-top: 10px;
text-align: center;
width:150px;
height:90px;
color:white;
font-size:22px;
font-weight: bold;
background:black;
opacity: .99;
}
.accordionRow {
color:white;
cursor: pointer;
font-size:18px;
font-weight: bold;
vertical-align: middle;
padding-top: 5px;
text-align: center;
width:150px;
height:40px;
background:#104E8B;
opacity: .99;
}
.accordionProduct {
text-align: center;
width:150px;
color:white;
font-size:12px;
font-weight: bold;
background:#104E8B;
opacity: .99;
}
.accordionLink {
cursor: pointer;
text-decoration: none;
color:white;
}
.accordionLinkSelected {
text-align: center;
width:150px;
color:red;
font-size:12px;
font-weight: bold;
background:black;
opacity: .99;
}
.accordionLinkHover {
text-decoration: underline;
color:white;
}
\ No newline at end of file
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.js
deleted file mode 100644
index 1c1ee6b..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/accordion.js
+++ /dev/null
@@ -1,249 +0,0 @@
-/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: accordion.js,v 1.22 2006/05/03 22:00:32 inder Exp $ */
-
-function AccordionMenu () {
-
- dojo.event.topic.subscribe("/accordion", this, this.handleEvent);
-
- var displayPortWidth = 100;
- var HEIGHT = 400;
-
- var EXPANDED_HEIGHT = 125;
- var ITEM_HEIGHT = 55;
- var INCREMENT = 10;
-
- var timeout = 5; // in ms
-
- var accordion = document.getElementById("accordionBody");
- var divs = [];
- var oExpandedIndex = -1;
- var nExpandedIndex = -1;
- var oHeight = ITEM_HEIGHT;
- var nHeight = ITEM_HEIGHT;
- var tHeight = 165;
- var expanding = false;
- var categories;
-
- // while control the inline debug statements
- var debug = false;
- var status = document.getElementById("status");
-
- function Row(id, div, defaultHeight) {
- this.id = id;
- this.div = div;
- //this.height = height;
- this.h = defaultHeight;
- this.div.style.height = defaultHeight + "px"
- }
-
- Row.prototype.setHeight = function(nH) {
- this.h = nH;
- this.div.style.height = nH + "px";
- // re-adjust for ie in that it does not follow the boxmodel
- if (this.div.offsetHeight > nH) {
- this.div.style.height = (nH - (this.div.offsetHeight - nH)) + 'px';
- }
- }
-
- Row.prototype.getTotalHeight = function() {
- return this.div.offsetHeight;
- }
-
- Row.prototype.getHeight = function() {
- return this.h;
- }
-
- this.handleEvent = function(args) {
- if (args.type) {
- if (args.type == 'expand') {
- var targetRow = args.targetRow;
- initiateExpansion(targetRow);
- }
- }
- }
-
- this.load = function(lcategories) {
- categories = lcategories;
- // create all the rows
- for (var l=0; l < categories.length; l++) {
- var row = createRow(l,"accordionRow", ITEM_HEIGHT);
- createLinks(row.div, categories[l].name, l, "accordionLink");
- divs.push(row);
- }
- }
-
- function showStatus() {
- if (debug) {
- var stat = "oExpandedIndex=" + oExpandedIndex + " " ;
- for (var i=0; i < divs.length; i++) {
- stat = stat + i + "=" + divs[i].getTotalHeight() + " ";
- }
- status.innerHTML = stat + " total height=" + accordion.offsetHeight;
- var totalH = 0;
- var tH = 0;
- for (var i=0; i < divs.length; i++) {
- totalH = totalH + divs[i].getHeight();
- tH = tH + divs[i].getTotalHeight();
- }
- }
- }
-
- this.showCategory = function(catid) {
- for (var l=0; l < categories.length; l++) {
- if (catid == categories[l].name) {
- // now tell the scroller to load the first product
- initiateExpansion(l);
- if (categories[l].products[0]) {
- dojo.event.topic.publish("/catalog", {type:"showProducts", productId:categories[l].products[0].id});
- }
- break;
- }
- }
- }
-
- this.showFirstCategory = function() {
- initiateExpansion(0);
- if (categories[0].products[0]) {
- dojo.event.topic.publish("/catalog", {type:"showProducts", productId:categories[0].products[0].id});
- }
- }
-
- this.loadCategoryItem = function(pid, itemId) {
- // find the right product and expand the accordion
- for (var l=0; l < categories.length; l++) {
- // now tell the scroller to load the first product
- for (var il=0; il < categories[l].products.length; il++) {
- if (categories[l].products[il].id == pid ) {
- initiateExpansion(l);
- break;
- }
- }
- }
- dojo.event.topic.publish("/catalog", {type:"showItemDetails", productId: pid , itemId: itemId});
- }
-
- function initiateExpansion(id) {
- // jump out if we are in progress
- if (!expanding && oExpandedIndex != Number(id)) {
- expanding = true;
- nExpandedIndex = Number(id);
- if (oExpandedIndex != -1) {
- var targetDiv = divs[oExpandedIndex].div;
- if (targetDiv && targetDiv.childNodes) {
- for (var l = targetDiv.childNodes.length -1; l >= 0 ; l--) {
- targetDiv.removeChild(targetDiv.childNodes[l]);
- }
- }
- createLinks(divs[oExpandedIndex].div, categories[oExpandedIndex].name, oExpandedIndex, "accordionLink");
- }
- expandRow(id);
- }
- }
-
- function expandRow() {
- if (expanding) {
- showStatus();
- //
- if (nHeight < EXPANDED_HEIGHT) {
- nHeight = nHeight + INCREMENT;
- divs[nExpandedIndex].setHeight(nHeight);
- if (oExpandedIndex != -1) {
- if (tHeight >= ITEM_HEIGHT) {
- oHeight = oHeight - INCREMENT;
- // take all out of the old expanded
- } else {
- oHeight = oHeight - INCREMENT;
- }
- divs[oExpandedIndex].setHeight(oHeight);
- }
- // default exapnd here
- } else if (oExpandedIndex != -1 && oHeight > ITEM_HEIGHT) {
- oHeight = oHeight - INCREMENT;
- divs[oExpandedIndex].setHeight(oHeight);
- } else {
- // set the contents of the new menu
- var targetDiv = divs[nExpandedIndex].div;
- if (targetDiv && targetDiv.childNodes) {
- for (var l = targetDiv.childNodes.length -1; l >= 0 ; l--) {
- targetDiv.removeChild(targetDiv.childNodes[l]);
- }
- }
- divs[nExpandedIndex].div.appendChild(document.createTextNode(categories[nExpandedIndex].name));
- divs[nExpandedIndex].div.appendChild(document.createElement("p"));
- for (var l= 0; l < categories[nExpandedIndex].products.length; l++) {
- var span = document.createElement("span");
- span.className = "accordionProduct";
- var link = document.createElement("a");
- var target = categories[nExpandedIndex].products[l].id;
- link.id = target;
- link.className = "accordionLink";
- // some browsers aren't setting the styles for hovers so forcing them
- link.setAttribute("onmouseover", "this.className='accordionLinkHover';");
- link.setAttribute("onmouseout", "this.className='accordionLink';");
- dojo.event.connect(link, "onclick", function(evt) {
- this._target = target
- var src;
- if (evt.target) {
- src = evt.target;
- } else if (evt.srcElement) {
- src = evt.srcElement;
- }
- //src.parentNode.className = "accordionLinkSelected";
- // set this so the next time around it can be removed;
- dojo.event.topic.publish("/catalog", {type:"showProducts", productId:src.id});
- });
- link.appendChild(document.createTextNode(categories[nExpandedIndex].products[l].name));
- span.appendChild(link);
- divs[nExpandedIndex].div.appendChild(span);
- if (l < categories[nExpandedIndex].products.length - 1) {
- divs[nExpandedIndex].div.appendChild(document.createElement("p"));
- }
- link = null;
- }
- expanding = false;
- oExpandedIndex = nExpandedIndex;
- nExpandedIndex = -1;
- oHeight = nHeight;
- nHeight = ITEM_HEIGHT;
- return;
- }
-
- setTimeout(expandRow, timeout);
- }
- }
-
- function createLinks(tDiv, text, id, linkStyle) {
- var link = document.createElement("a");
- link.className = linkStyle;
- link.appendChild(document.createTextNode(text));
- link.setAttribute("id", id);
- if (link.attachEvent) {
- link.attachEvent('onmouseover',function(e){initiateExpansion(e.srcElement.getAttribute("id"));});
- } else if (link.addEventListener) {
- link.addEventListener('mouseover',function(e){initiateExpansion(e.currentTarget.getAttribute("id"));}, true);
- }
- tDiv.appendChild(link);
- }
-
- function createRow(id, rowStyle, height) {
- var nDiv = document.createElement("div");
- nDiv.className = rowStyle;
- var row;
- var cell;
- if (accordion.insertRow) {
- row = accordion.insertRow(accordion.rows.length);
-
- } else {
- row = document.createElement("tr");
- accordion.appendChild(row);
- }
- if (row.inserCell) {
- cell = row.insertCell(0);
- } else {
- cell = document.createElement("td");
- row.appendChild(cell);
- }
- cell.appendChild(nDiv);
- return new Row(id, nDiv, height);
- }
-}
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/banner.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/banner.jsp
deleted file mode 100644
index c43dd98..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/banner.jsp
+++ /dev/null
@@ -1,80 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: banner.jsp,v 1.28 2006/12/19 20:23:53 yutayoshida Exp $ --%>
-
-<%@page contentType="text/html"%>
-<%@page pageEncoding="UTF-8"%>
-
-<%@taglib prefix="f" uri="http://java.sun.com/jsf/core "%>
-<%@taglib prefix="h" uri="http://java.sun.com/jsf/html "%>
-<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
-
-<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/styles.css"></link>
-<script type="text/javascript" src="${pageContext.request.contextPath}/faces/static/META-INF/dojo/bpcatalog/dojo.js"></script>
-<script type="text/javascript" src="${pageContext.request.contextPath}/faces/static/META-INF/rss/rssbar.js"></script>
-<link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/faces/static/META-INF/rss/rssbar.css" />
-<style type="text/css">
-
-#rss-bar {
- margin: 0 auto 0px;
-}
-
-#rss-bar table td#rss-channel {
- background-repeat: no-repeat;
- background-position: top left;
- font-size: 14px;
- font-weight: bold;
- vertical-align: top;
- text-align: center;
- width: 254px;
-}
-
-#rss-bar table td#rss-item {
- background-repeat: no-repeat;
- font-size: 14px;
- width: 534px;
- text-align: left;
-}
-
-#rss-bar table a {
- color: white;
- text-decoration: none;
-}
-#rss-bar table a:hover { color: #ffff00;}
-
-</style>
-<script type="text/javascript">
- var rss = new bpui.RSS();
- dojo.addOnLoad(function(){rss.getRssInJson('${pageContext.request.contextPath}/faces/dynamic/bpui_rssfeedhandler/getRssfeed', 'https://blueprints.dev.java.net/servlets/ProjectRSS?type=news ', '4', '4000', 'News from BluePrints', 'news.jsp');});
-</script>
-
-<table border="0" bordercolor="gray" cellpadding="0" cellspacing="0" bgcolor="white" width="100%">
- <tr id="injectionPoint">
- <td width="100"><a class="menuLink" href="${pageContext.request.contextPath}/faces/index.jsp""><img src="${pageContext.request.contextPath}/images/banner_logo.gif" border="0" width="70" height="70"></a></td>
- <td align="left">
- <div class="banner">Java Pet Store</div>
- </td>
- <td id="bannerRight" align="right">
- <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/fileupload.jsp">Seller</a> <span class="menuItem">|</span>
- <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/search.jsp">Search</a> <span class="menuItem">|</span>
- <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/catalog.jsp">Catalog</a> <span class="menuItem">|</span>
- <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/mapAll.jsp">Map</a> <span class="menuItem">|</span>
- <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/tag.jsp">Tags</a> <span class="menuItem">|</span>
- <a class="menuLink" onmouseover="this.className='menuLinkHover';" onmouseout="this.className='menuLink';" href="${pageContext.request.contextPath}/faces/index.jsp">Home</a>
- </td>
- </tr>
- </tr>
- <tr bgcolor="gray">
- <td id="menubar" align="left" colspan="3" height="25" >
- <div id="rss-bar">
- <table border="0" cellpadding="0" cellspacing="0">
- <tr>
- <td id="rss-channel" nowrap="true"></td>
- <td id="rss-item" nowrap="true"></td>
- </tr>
- </table>
- </div>
- </td>
- </tr>
- </table>
-
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.css b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.css
deleted file mode 100644
index 5c906b5..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.css
+++ /dev/null
@@ -1,48 +0,0 @@
-.bpui_petstorelist_dataDiv {
- border-style: groove;
- overflow: auto;
- width: 600px;
- height: 500px;
- padding: 10px;
-}
-
-.bpui_petstorelist_pageDiv {
-}
-
-
-.bpui_petstorelist_table {
-}
-
-.bpui_petstorelist_cell {
- padding: 5px;
- vertical-align: top;
-}
-
-.bpui_petstorelist_row {
- border-bottom: dotted;
-}
-
-.bpui_petstorelist_hr {
- width: 90%;
-}
-
-.bpui_petstorelist_image {
-}
-
-.bpui_petstorelist_link{
-}
-
-.bpui_petstorelist_name{
-}
-
-.bpui_petstorelist_description{
-}
-
-.bpui_petstorelist_price {
-}
-
-.bpui_petstorelist_previous {
-}
-
-.bpui_petstorelist_next {
-}
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.js
deleted file mode 100644
index 4df46fb..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist.js
+++ /dev/null
@@ -1,269 +0,0 @@
-var bpui;
-if(typeof bpui == "undefined") {
- bpui=new Object();
-}
-bpui.petstoreList=new Object();
-
-bpui.petstoreList.divName="";
-bpui.petstoreList.currentCount=0;
-bpui.petstoreList.numberPerPage=5;
-bpui.petstoreList.category="feline01";
-bpui.petstoreList.cachedData=new Object();
-bpui.petstoreList.debug=false;
-bpui.petstoreList.timer;
-
-bpui.petstoreList.initialSetup=function() {
- // get outerdiv
- var targetDiv=document.getElementById(bpui.petstoreList.divName);
-
- // containier div
- tablex="<table><tr><td align=\"center\">";
- tablex += "<b>Java BluePrint's Pet Store Category:</b> <select size=\"1\" id=\"bpui.petstoreList.categoryList\" onchange=\"bpui.petstoreList.selectCategory()\">";
- tablex += "<option value=\"loading\">Loading Data...</option>";
- tablex += "</select>";
- tablex += "</td></tr><tr><td><div id=\"bpui.petstoreList.dataDiv\" class=\"bpui_petstorelist_dataDiv\">";
- tablex += "</div>";
-
- // add product previous and next
- tablex += "</td></tr>";
- tablex += "<tr><td colspan=\"3\" style=\"text-align:center;\">";
- tablex += "<div id=\"bpui.petstoreList.pageDiv\" class=\"bpui_petstorelist_pageDiv\">";
- tablex += "</div>";
- tablex += "</td></tr>";
- // add in debug div, if debugging
- if(bpui.petstoreList.debug) {
- tablex += "<tr><td colspan=\"3\">";
- tablex += "<div id=\"bpui.petstoreList.debugDiv\">";
- tablex += "</div>";
- tablex += "</td></tr>";
- }
- tablex += "</table>";
- targetDiv.innerHTML=tablex;
- bpui.petstoreList.setSelectedCategory();
-}
-
-
-bpui.petstoreList.populateData=function(datax) {
- // clear response timer
- clearTimeout(bpui.petstoreList.timer);
-
- if(typeof datax != "undefined") {
- // check to see if at last page and no data is returned
- if(datax.length < 1) {
- alert("At last page for category!");
- // keep currentCount correct by removing the increment that was added
- bpui.petstoreList.currentCount -= bpui.petstoreList.numberPerPage;
- } else {
- // add data to cache if it doesn't already exist
- // if a full set isn't returned don't cache it, so the data will be retrieved again from the server.
- // This is optional, you have to weigh the performance hit with the consiquences of not doing an update
- key=bpui.petstoreList.category + "|" + bpui.petstoreList.currentCount;
- cachedSet=bpui.petstoreList.cachedData[key];
- if(typeof cachedSet == "undefined" && datax.length >= bpui.petstoreList.numberPerPage) {
- // need to cache data
- if(bpui.petstoreList.debug) bpui.petstoreList.debugMessage("Adding cache data by key: " + key);
- bpui.petstoreList.cachedData[key]=datax;
- }
-
- // get outerdiv
- var targetDiv=document.getElementById("bpui.petstoreList.dataDiv");
-
- // containier div
- tablex="<table class=\"bpui_petstorelist_table\">";
- tablex += "<tr class=\"bpui_petstorelist_row\">";
- tablex += "<th class=\"bpui_petstorelist_cell\">Pet Image</td>";
- tablex += "<th class=\"bpui_petstorelist_cell\">Name & Description</td>";
- tablex += "<th class=\"bpui_petstorelist_cell\">Price ($)</td>";
- tablex += "</tr>";
-
- // loop through product results
- for(ii=0; ii < datax.length; ii++) {
- // add row
- tablex += "<tr class=\"bpui_petstorelist_row\"><td class=\"bpui_petstorelist_cell\">";
- tablex += "<a class=\"bpui_petstorelist_image\" target=\"_blank\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
- datax[ii].productID + "," + datax[ii].itemID + "\">";
-
- tablex += "<img src=\"http://localhost:8080/petstore/ImageServlet/ " + datax[ii].imageThumbURL + "\"/>";
-
- tablex += "</a>";
- tablex += "</td><td class=\"bpui_petstorelist_cell\">";
- tablex += "<a class=\"bpui_petstorelist_link\" target=\"_blank\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
- datax[ii].productID + "," + datax[ii].itemID + "\">";
- tablex += "<span class=\"bpui_petstorelist_name\">" + datax[ii].name + "</span><br/>";
- tablex += "</a>";
- tablex += "<span class=\"bpui_petstorelist_description\">" + datax[ii].description + "</span>";
- tablex += "</td><td class=\"bpui_petstorelist_cell\">";
-
- // add product price
- tablex += "<span class=\"bpui_petstorelist_price\">\$" + datax[ii].price + "</span><br/>";
- tablex += "</td></tr>";
- tablex += "<tr><td colspan=\"3\"><hr class=\"bpui_petstorelist_hr\" /></td></tr>";
- }
-
- tablex += "</table>";
- targetDiv.innerHTML=tablex;
- }
-
- // setup previous next buttons
- pagex="";
- var targetDiv=document.getElementById("bpui.petstoreList.pageDiv");
- if(bpui.petstoreList.currentCount >= bpui.petstoreList.numberPerPage) {
- // add previous
- pagex += "<span class=\"bpui_petstorelist_previous\" onclick=\"bpui.petstoreList.previousProducts();\"><< PREVIOUS</span> ";
- }
- if(datax.length == bpui.petstoreList.numberPerPage) {
- // add next only if full page has been returned. Need to change when add cache ???
- pagex += "<span class=\"bpui_petstorelist_next\" onclick=\"bpui.petstoreList.nextProducts();\">NEXT >></span><br/>";
- }
- targetDiv.innerHTML=pagex;
- }
-}
-
-bpui.petstoreList.setSelectedCategory=function() {
- catx=document.getElementById("bpui.petstoreList.categoryList");
- for(ii=0; ii < catx.length; ii++) {
- if(catx.options[ii].value == bpui.petstoreList.category) {
- catx.options[ii].selected=true;
- }
- }
-}
-
-bpui.petstoreList.selectCategory=function() {
- catx=document.getElementById("bpui.petstoreList.categoryList");
- bpui.petstoreList.category=catx.value;
-
- bpui.petstoreList.currentCount=0;
- bpui.petstoreList.updateProducts();
-}
-
-
-bpui.petstoreList.nextProducts=function() {
- // load data from service
- bpui.petstoreList.currentCount += bpui.petstoreList.numberPerPage;
- bpui.petstoreList.updateProducts();
-}
-
-bpui.petstoreList.previousProducts=function() {
- bpui.petstoreList.currentCount -= bpui.petstoreList.numberPerPage;
- if(bpui.petstoreList.currentCount < 0) {
- bpui.petstoreList.currentCount=0;
- }
- bpui.petstoreList.updateProducts();
-}
-
-
-bpui.petstoreList.updateProducts=function() {
- // check to see if in cache
- key=bpui.petstoreList.category + "|" + bpui.petstoreList.currentCount;
- cachedSet=bpui.petstoreList.cachedData[key];
- // see if data in cache
- if(typeof cachedSet != "undefined") {
- // get data from cache
- if(bpui.petstoreList.debug) bpui.petstoreList.debugMessage("Pulling data from cache using: " + key + " with " + cachedSet.length + " items.");
- bpui.petstoreList.populateData(cachedSet);
- } else {
- // load data from service
- if(bpui.petstoreList.debug) bpui.petstoreList.debugMessage("Retrieving data from service for : " + bpui.petstoreList.category + " starting at item " + bpui.petstoreList.currentCount);
-
- // set degradation timeout
- bpui.petstoreList.timer=setTimeout('bpui.petstoreList.requestTimedOut()', 20000);
-
- // create dynamic script
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=" + bpui.petstoreList.currentCount + "&length=" + bpui.petstoreList.numberPerPage + "&format=jsonp&callback=bpui.petstoreList.populateData");
- bodyTag.appendChild(scriptx);
- }
-}
-
-
-bpui.petstoreList.createPetstoreList=function(divName, numberPerPage) {
- // keep divName for later references
- bpui.petstoreList.divName=divName;
-
- // see if numberPerPage defined
- if(typeof numberPerPage != "undefined") {
- bpui.petstoreList.numberPerPage=numberPerPage;
- }
-
- // setup static elements
- bpui.petstoreList.initialSetup();
-
- // set timer to make sure service look up returns. Eventhough the Javascript library was able to be fetched, the database could be down or the
- // service could be responding very slowly and the request timeout. Wait for 30 seconds and then set data div to service may not be responding message.
- // Since both calls hit the database, if one returns propertly the other should also.
- bpui.petstoreList.timer=setTimeout('bpui.petstoreList.requestTimedOut()', 20000);
-
- // load categories from service
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=categories&format=jsonp&ca... ");
- bodyTag.appendChild(scriptx);
-
- // load pet data from service
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=0&length=" + bpui.petstoreList.numberPerPage + "&format=jsonp&callback=bpui.petstoreList.populateData");
- bodyTag.appendChild(scriptx);
-}
-
-
-bpui.petstoreList.requestTimedOut=function() {
- document.getElementById("bpui.petstoreList.dataDiv").innerHTML="<b><font color=\"#0000FF\">The Java BluePrint's Pet Store JSONP Service is either responding very slowly or not responding at all! Please check with the service provider for more information.</font></b>";
-}
-
-
-
-bpui.petstoreList.debugMessage=function(messx) {
- targetDiv=document.getElementById("bpui.petstoreList.debugDiv");
- targetDiv.innerHTML=messx + "<br/>" + targetDiv.innerHTML;
-}
-
-
-bpui.petstoreList.populateCategory=function(datax) {
- // clear response timer
- clearTimeout(bpui.petstoreList.timer);
-
- if(typeof datax != "undefined") {
- catx=document.getElementById("bpui.petstoreList.categoryList");
- countx=0;
- // loop through top level categories
- for(ii=0; ii < datax.length; ii++) {
- // loop through individual categories
- for(yy=0; yy < datax[ii].products.length; yy++) {
- // set default value for select list
- bCurrentSelect=false
- if(datax[ii].products[yy].id == bpui.petstoreList.category) {
- bCurrentSelect=true;
- }
- catx.options[countx]=new Option(datax[ii].products[yy].name, datax[ii].products[yy].id, false, bCurrentSelect);
- countx++;
- }
- }
- }
-}
-
-
-bpui.petstoreList.hackerExample=function() {
- /*
- bodyTag=document.getElementsByTagName("body")[0];
- iframex=document.createElement("iframe");
- iframex.setAttribute("src", "http://localhost:8080/bp-clientside-mashup/show.jsp?cookies= " + escape(document.cookie));
- bodyTag.appendChild(iframex);
- */
- // load pet data from service
-
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/bp-clientside-mashup/show.jsp?cookies= " + escape(document.cookie));
- bodyTag.appendChild(scriptx);
-
-
-}
-
-
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_dom.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_dom.js
deleted file mode 100644
index d00e427..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_dom.js
+++ /dev/null
@@ -1,136 +0,0 @@
-var bpui;
-if(typeof bpui == "undefined") {
- bpui=new Object();
-}
-bpui.petstoreList=new Object();
-
-bpui.petstoreList.divName="";
-bpui.petstoreList.currentCount=0;
-
-bpui.petstoreList.populateData=function(datax) {
- if(typeof datax != "undefined") {
-
- // get outerdiv
- var targetDiv=document.getElementById(bpui.petstoreList.divName);
-
- // make sure div is clear
- targetDiv.innerHTML="";
-
- // add class to containing div
- targetDiv.setAttribute("class", "bpui_petstorelist_div")
-
- // add table
- tablex=document.createElement("table");
- tablex.setAttribute("class", "bpui_petstorelist_table")
- targetDiv.appendChild(tablex);
-
- // loop through product results
- for(ii=0; ii < datax.length; ii++) {
- // add row
- rowx=document.createElement("tr");
-
- // add product image with hyperlink
- colx=document.createElement("td");
- ax=document.createElement("a");
- ax.setAttribute("href", "http://localhost:8080/petstore/faces/catalog.jsp# " + datax[ii].productID + "," + datax[ii].itemID)
- ax.setAttribute("target", "bppetstore")
- ax.setAttribute("class", "bpui_petstorelist_image")
- imgx=document.createElement("img");
- imgx.setAttribute("src", "http://localhost:8080/petstore/ImageServlet/ " + datax[ii].imageThumbURL);
- ax.appendChild(imgx);
- colx.appendChild(ax);
- rowx.appendChild(colx);
-
- // add product name with hyperlink
- colx=document.createElement("td");
- ax=document.createElement("a");
- ax.setAttribute("href", "http://localhost:8080/petstore/faces/catalog.jsp# " + datax[ii].productID + "," + datax[ii].itemID)
- ax.setAttribute("target", "bppetstore")
- ax.setAttribute("class", "bpui_petstorelist_name_link")
- spanx=document.createElement("span");
- spanx.setAttribute("class", "bpui_petstorelist_name")
- spanx.appendChild(document.createTextNode(datax[ii].name));
- ax.appendChild(spanx);
- colx.appendChild(ax);
- colx.appendChild(document.createElement("br"));
- // add product description
- spanx=document.createElement("span");
- spanx.setAttribute("class", "bpui_petstorelist_description");
- spanx.appendChild(document.createTextNode(datax[ii].description));
- colx.appendChild(spanx);
- rowx.appendChild(colx);
-
- // add product price
- colx=document.createElement("td");
- spanx=document.createElement("span");
- spanx.setAttribute("class", "bpui_petstorelist_price");
- spanx.appendChild(document.createTextNode("\$" + datax[ii].price));
- colx.appendChild(spanx);
- rowx.appendChild(colx);
-
- // add row to table
- tablex.appendChild(rowx);
- }
-
- // add product previous and next
- rowx=document.createElement("tr");
- colx=document.createElement("td");
- colx.setAttribute("colspan", "3");
- spanx=document.createElement("span");
- spanx.setAttribute("class", "bpui_petstorelist_previous");
- spanx.setAttribute("onclick", "bpui.petstoreList.previousProducts();");
- spanx.appendChild(document.createTextNode("<< PREVIOUS"));
- colx.appendChild(spanx);
-
- spanx=document.createElement("span");
- spanx.setAttribute("class", "bpui_petstorelist_next");
- spanx.setAttribute("onclick", "bpui.petstoreList.nextProducts();");
- spanx.appendChild(document.createTextNode("NEXT >>"));
- colx.appendChild(spanx);
- rowx.appendChild(colx);
-
- // add row to table
- tablex.appendChild(rowx);
- }
-}
-
-
-bpui.petstoreList.nextProducts=function() {
- // load data from service
- bpui.petstoreList.currentCount += 5;
- bpui.petstoreList.updateProducts();
-}
-
-
-bpui.petstoreList.previousProducts=function() {
- bpui.petstoreList.currentCount -= 5;
- if(bpui.petstoreList.currentCount < 0) {
- bpui.petstoreList.currentCount=0;
- }
- bpui.petstoreList.updateProducts();
-}
-
-
-bpui.petstoreList.updateProducts=function() {
- // load data from service
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid=feline01&start= " + bpui.petstoreList.currentCount + "&length=5&format=jsonp");
- bodyTag.appendChild(scriptx);
-}
-
-
-
-bpui.petstoreList.createPetstoreList=function(divName) {
- // keep divName for later references
- bpui.petstoreList.divName=divName;
-
- // load data from service
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid=feline01&start=0... ");
- bodyTag.appendChild(scriptx);
-}
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_one_div.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_one_div.js
deleted file mode 100644
index 9b18cb4..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/bp_petstorelist_one_div.js
+++ /dev/null
@@ -1,159 +0,0 @@
-var bpui;
-if(typeof bpui == "undefined") {
- bpui=new Object();
-}
-bpui.petstoreList=new Object();
-
-bpui.petstoreList.divName="";
-bpui.petstoreList.currentCount=0;
-bpui.petstoreList.category="feline01";
-
-
-bpui.petstoreList.initialSetup=function() {
- // get outerdiv
- var targetDiv=document.getElementById(bpui.petstoreList.divName);
-
- // containier div
- tablex="<table><tr><td align=\"center\">";
- tablex += "<b>Java BluePrint's Pet Store Category:</b> <select size=\"1\" id=\"bpui.petstoreList.categoryList\" onchange=\"bpui.petstoreList.selectCategory()\">";
- tablex += "<option value=\"feline01\">Hairy Cat</option>";
- tablex += "<option value=\"feline02\">Groomed Cat</option>";
- tablex += "<option value=\"canine01\">Medium Dogs</option>";
- tablex += "<option value=\"canine02\">Small Dogs</option>";
- tablex += "<option value=\"avian01\">Parrot</option>";
- tablex += "<option value=\"avian02\">Exotic</option>";
- tablex += "<option value=\"fish01\">Small Fish</option>";
- tablex += "<option value=\"fish02\">Large Fish</option>";
- tablex += "<option value=\"reptile01\">Slithering Reptiles</option>";
- tablex += "<option value=\"reptile02\">Crawling Reptiles</option>";
- tablex += "</select>";
- tablex += "</td></tr><tr><td><div class=\"bpui_petstorelist_div\">";
- tablex += "</div>";
-
- // add product previous and next
- tablex += "</td></tr>";
- tablex += "<tr><td colspan=\"3\" style=\"text-align:center;\">";
- tablex += "<span class=\"bpui_petstorelist_previous\" onclick=\"bpui.petstoreList.previousProducts();\"><< PREVIOUS</span> ";
- tablex += "<span class=\"bpui_petstorelist_next\" onclick=\"bpui.petstoreList.nextProducts();\">NEXT >></span><br/>";
- tablex += "</td></tr>";
- tablex += "</table>";
- targetDiv.innerHTML=tablex;
- bpui.petstoreList.setSelectedCategory();
-}
-
-bpui.petstoreList.populateData=function(datax) {
- if(typeof datax != "undefined") {
-
- // get outerdiv
- var targetDiv=document.getElementById(bpui.petstoreList.divName);
-
- // containier div
- tablex="<table><tr><td align=\"center\">";
- tablex += "<b>Java BluePrint's Pet Store Category:</b> <select size=\"1\" id=\"bpui.petstoreList.categoryList\" onchange=\"bpui.petstoreList.selectCategory()\">";
- tablex += "<option value=\"feline01\">Hairy Cat</option>";
- tablex += "<option value=\"feline02\">Groomed Cat</option>";
- tablex += "<option value=\"canine01\">Medium Dogs</option>";
- tablex += "<option value=\"canine02\">Small Dogs</option>";
- tablex += "<option value=\"avian01\">Parrot</option>";
- tablex += "<option value=\"avian02\">Exotic</option>";
- tablex += "<option value=\"fish01\">Small Fish</option>";
- tablex += "<option value=\"fish02\">Large Fish</option>";
- tablex += "<option value=\"reptile01\">Slithering Reptiles</option>";
- tablex += "<option value=\"reptile02\">Crawling Reptiles</option>";
- tablex += "</select>";
- tablex += "</td></tr><tr><td><div class=\"bpui_petstorelist_div\">";
-
- tablex += "<table class=\"bpui_petstorelist_table\">";
-
- // loop through product results
- for(ii=0; ii < datax.length; ii++) {
- // add row
- tablex += "<tr class=\"bpui_petstorelist_row\"><td class=\"bpui_petstorelist_cell\">";
- tablex += "<a class=\"bpui_petstorelist_image\" target=\"bppetstore\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
- datax[ii].productID + "," + datax[ii].itemID + "\">";
-
- tablex += "<img src=\"http://localhost:8080/petstore/ImageServlet/ " + datax[ii].imageThumbURL + "\"/>";
-
- tablex += "</a>";
- tablex += "</td><td class=\"bpui_petstorelist_cell\">";
- tablex += "<a class=\"bpui_petstorelist_link\" target=\"bppetstore\" href=\"http://localhost:8080/petstore/faces/catalog.jsp# " +
- datax[ii].productID + "," + datax[ii].itemID + "\">";
- tablex += "<span class=\"bpui_petstorelist_name\">" + datax[ii].name + "</span><br/>";
- tablex += "</a>";
- tablex += "<span class=\"bpui_petstorelist_description\">" + datax[ii].description + "</span>";
- tablex += "</td><td class=\"bpui_petstorelist_cell\">";
-
- // add product price
- tablex += "<span class=\"bpui_petstorelist_price\">\$" + datax[ii].price + "</span><br/>";
- tablex += "</td></tr>";
- tablex += "<tr><td colspan=\"3\"><hr class=\"bpui_petstorelist_hr\" /></td></tr>";
- }
-
- tablex += "</table></div>";
-
- // add product previous and next
- tablex += "</td></tr>";
- tablex += "<tr><td colspan=\"3\" style=\"text-align:center;\">";
- tablex += "<span class=\"bpui_petstorelist_previous\" onclick=\"bpui.petstoreList.previousProducts();\"><< PREVIOUS</span> ";
- tablex += "<span class=\"bpui_petstorelist_next\" onclick=\"bpui.petstoreList.nextProducts();\">NEXT >></span><br/>";
- tablex += "</td></tr>";
- tablex += "</table>";
- targetDiv.innerHTML=tablex;
- bpui.petstoreList.setSelectedCategory();
- }
-}
-
-bpui.petstoreList.setSelectedCategory=function() {
- catx=document.getElementById("bpui.petstoreList.categoryList");
- for(ii=0; ii < catx.length; ii++) {
- if(catx.options[ii].value == bpui.petstoreList.category) {
- catx.options[ii].selected=true;
- }
- }
-}
-
-
-bpui.petstoreList.selectCategory=function() {
- catx=document.getElementById("bpui.petstoreList.categoryList");
- bpui.petstoreList.category=catx.value;
-
- bpui.petstoreList.currentCount=0;
- bpui.petstoreList.updateProducts();
-}
-
-
-bpui.petstoreList.nextProducts=function() {
- // load data from service
- bpui.petstoreList.currentCount += 5;
- bpui.petstoreList.updateProducts();
-}
-
-bpui.petstoreList.previousProducts=function() {
- bpui.petstoreList.currentCount -= 5;
- if(bpui.petstoreList.currentCount < 0) {
- bpui.petstoreList.currentCount=0;
- }
- bpui.petstoreList.updateProducts();
-}
-
-bpui.petstoreList.updateProducts=function() {
- // load data from service
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=" + bpui.petstoreList.currentCount + "&length=5&format=jsonp");
- bodyTag.appendChild(scriptx);
-}
-
-bpui.petstoreList.createPetstoreList=function(divName) {
- // keep divName for later references
- bpui.petstoreList.divName=divName;
-
- // load data from service
- bodyTag=document.getElementsByTagName("body")[0];
- scriptx=document.createElement("script");
- scriptx.setAttribute("type", "text/javascript");
- scriptx.setAttribute("src", "http://localhost:8080/petstore/catalog?command=items&pid= " + bpui.petstoreList.category + "&start=0&length=5&format=jsonp");
- bodyTag.appendChild(scriptx);
-
-}
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/captchaerror.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/captchaerror.jsp
deleted file mode 100644
index 60ef953..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/captchaerror.jsp
+++ /dev/null
@@ -1,23 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: captchaerror.jsp,v 1.1 2006/02/17 03:04:22 yutayoshida Exp $ --%>
-
-<%@page contentType="text/html"%>
-<%@page pageEncoding="UTF-8"%>
-
-
-<!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>Captcha Error</title>
- </head>
- <body>
-
- <h1>Please input the right captcha string -- <a href="./">Try again</a>
-
-
-
- </body>
-</html>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.js
deleted file mode 100644
index 4bdfc69..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.js
+++ /dev/null
@@ -1,329 +0,0 @@
-/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: catalog.js,v 1.21 2007/01/17 22:16:44 basler Exp $ */
-
-var ac;
-var is;
-var controller;
-//var debug=true;
-
-function getApplicationContextRoot() {
- var urlArray=window.location.toString().split("/", 4);
- return "/" + urlArray[3];
-}
-
-var applicationContextRoot=getApplicationContextRoot();
-
-function initCatalog() {
- ac = new AccordionMenu();
- is = new ImageScroller();
- is.load();
- controller = new CatalogController();
- // wire in a listener for the rating component
- dojo.event.connect("before", bpui.rating, "doClick", controller, "modifyState");
- controller.initialize();
-}
-
-function CatalogController() {
- dojo.event.topic.subscribe("/catalog", this, handleEvent);
-
- // this object structure contains a list of the products and chunks that have been loaded
- var pList = new ProductList();
-
- var CHUNK_SIZE=7;
- var initalRating;
- var initalItem;
- var originalURL;
-
- // using this for some browsers that do not support innerHTML
- var useDOMInjection = false;
-
- var infoName = document.getElementById("infopaneName");
- var infoRating = document.getElementById("infopaneRating");
- var infoPrice = document.getElementById("infopanePrice");
- var infoBuyNow = document.getElementById("infopaneBuyNow");
- var infoShortDescription = document.getElementById("infopaneShortDescription");
- var infoDescription = document.getElementById("infopaneDescription");
- // for paypal
- var buyNowAmount = document.getElementById("buyNow1_amount");
- var buyNowItemName = document.getElementById("buyNow1_item_name");
-
- function handleEvent(args) {
- if (args.type == "showingItem") {
- // update the id on the ratring component
- if (typeof bpui != 'undefined') {
- var groupId = is.getGroupId();
- window.location.href= originalURL + "#" + groupId + "," + args.id;
- if (typeof bpui.rating != 'undefined') {
- // update the rating
- bpui.rating.state["rating"].bindings["itemId"]=args.id;
- bpui.rating.modifyDisplay("rating", args.rating, true);
- // get the currrent item
- showItemDetails(args.id);
- } else {
- initalItem = args.id;
- initalRating = args.rating;
- }
- } else {
- // things haven't been loaded to set the inital rating
- initalItem = args.id;
- initalRating = args.rating;
- }
- } else if (args.type == "getChunk") {
- populateItems(args.id, args.index, args.currentChunk, false);
-
- } else if (args.type == "showItemDetails") {
- showProductDetails(args.productId, args.itemId);
-
- } else if (args.type == "showProducts") {
- is.reset();
- populateItems(args.productId, 0, 0, true);
- }
- }
-
- function showItemDetails(id) {
- var i = is.getItems().get(id);
- setNodeText(infoName, i.name + "<br/><a href='javascript:controller.disableItem("" + id + "","" + i.name + "")'><font size='-1' color='white'><i>Flag as inappropriate</i></font></a>");
- setNodeText(infoPrice, i.price);
- setNodeText(infoShortDescription, i.shortDescription);
- setNodeText(infoDescription, i.description);
- // update the paypal
- buyNowAmount.value = i.price;
- buyNowItemName.value = i.name;
- }
-
- function setNodeText(t, text) {
- if (useDOMInjection) {
- t.lastChild.nodeValue = text;
- } else {
- t.innerHTML = text;
- }
- }
-
- this.initialize = function() {
- // check whether the innerHTML changes can be used in the infopane
- infoName.innerHTML = " ";
- if (!useDOMInjection && infoName.innerHTML != " ") {
- useDOMInjection = true;
-
- infoName.appendChild(document.createTextNode("Name"));
- infoPrice.appendChild(document.createTextNode("$0.00"));
- infoShortDescription.appendChild(document.createTextNode("<description>"));
- infoDescription.appendChild(document.createTextNode("<description>"));
- }
-
- var ratingInstance = bpui.rating.state["rating"];
- ratingInstance.grade = initalRating;
- bpui.rating.state["rating"].bindings["itemId"]=initalItem;
- bpui.rating.modifyDisplay("rating", initalRating, true);
- loadAccordion();
- }
-
-
- this.modifyState = function(arg, rating) {
- var itemId = initalItem;
- if (typeof bpui.rating.state["rating"].bindings["itemId"] != 'undefined') {
- itemId = bpui.rating.state["rating"].bindings["itemId"];
- }
- // set the cached rating to the new rating that was set.
- is.getItems().get(itemId).rating = rating;
- }
-
-
- function loadAccordion () {
- // go out and get the categories
- // this should be made more geric
- var bindArgs = {
- url: applicationContextRoot + "/catalog?command=categories&format=json",
- mimetype: "text/json",
- load: function(type,json) {
- ac.load(json);
- processURLParameters();
- },
- error: ajaxBindError
- };
- dojo.io.bind(bindArgs);
- }
-
- // this needs to happen after we have loaded the accordion data
- function processURLParameters() {
- originalURL = decodeURIComponent(window.location.href);
- var params = {};
- // look for the params
- if (originalURL.indexOf("#") != -1) {
- var qString = originalURL.split('#')[1];
- var args = qString.split(',');
- originalURL = originalURL.split('#')[0];
- ac.loadCategoryItem(args[0], args[1]);
- return;
- } else if (originalURL.indexOf("?") != -1) {
- var qString = originalURL.split('?')[1];
- // get rid of any bookmarking stuff
- if (qString.indexOf("#") != -1) {
- qString = qString.split('#')[0];
- originalURL = originalURL.split('#')[0];
- window.location.href = originalURL;
- }
- ps = qString.split('&');
- // now go through and create the params map as an object literal
- for (var i in ps) {
- var t = ps[i].split('=');
- params[t[0]] = t[1];
- }
- // first check for the item in product
- if (typeof params.itemId != 'undefined' && typeof params.pid != 'undefined') {
- ac.loadCategoryItem(params.pid, params.itemId);
- // next if there is a catid definition then do it
- } else if (typeof params.catid != 'undefined') {
- ac.showCategory(params.catid);
- }
- } else {
- // nothing is selected
- ac.showFirstCategory();
- }
- }
-
-
-
- function showProductDetails(pid, itemId) {
- is.reset();
- is.showProgressIndicator();
- var bindArgs = {
- url: applicationContextRoot + "/catalog?command=itemInChunk&pid=" + pid + "&itemId=" + itemId + "&length=" + CHUNK_SIZE,
- mimetype: "text/xml",
- load: function(type,data,postProcessHandler) {
- processProductData(data,true, pid, itemId);
- showItemDetails(itemId);
- is.doMaximize();
- },
- error: ajaxBindError
- };
- dojo.io.bind(bindArgs);
- }
-
-
-
- function populateItems(pid, index, neededChunk, showImage) {
- is.showProgressIndicator();
- is.setGroupId(pid);
- printDebug("populateItems - need to make sure displaying - pid=" + pid + " Chunk=" + neededChunk);
-
- // check to see if relevant scroller page is already loaded
- if(!is.containsChunk(pid + "_" + neededChunk)) {
-
- // not loaded, so see if it is in the cache
- if (pList.hasChunk(pid, neededChunk)) {
- // in cache, so add chunk to scroller
- printDebug("**** adding chunk from cache - pid=" + pid + " Chunk=" + neededChunk);
- is.addChunk(pid + "_" + neededChunk);
- is.addItems(pList.getChunk(pid, neededChunk));
-
- // show first image if you have it
- if(showImage && is.getScrollerItems().length > 0) {
- is.showImage(is.getScrollerItems()[0].id);
- }
-
- } else {
- // not in cache so load it
- startRetIndex=(neededChunk * CHUNK_SIZE);
-
- printDebug("**** retrieving chunk from server - pid=" + pid + " currentIndex=" + index + " startIndex=" + startRetIndex + " Chunk=" + neededChunk);
- var bindArgs = {
- url: applicationContextRoot + "/catalog?command=items&pid=" + pid + "&start=" + startRetIndex + "&length=" + CHUNK_SIZE,
- mimetype: "text/xml",
- load: function(type,data,postProcessHandler) {
- processProductData(data, showImage, pid, null, neededChunk);
- },
- error: ajaxBindError
- };
- dojo.io.bind(bindArgs);
- }
- } else {
- printDebug("*** items already showing");
- }
-
- }
-
-
- function processProductData(responseXML, showImage, pid, iId, chunkId) {
- var items = [];
- var count = responseXML.getElementsByTagName("item").length;
- for (var loop=0; loop < count ; loop++) {
-
- var item = responseXML.getElementsByTagName("item")[loop];
- var itemId = item.getElementsByTagName("id")[0].firstChild.nodeValue;
- var name = item.getElementsByTagName("name")[0].firstChild.nodeValue;
- var thumbURL = item.getElementsByTagName("image-tb-url")[0].firstChild.nodeValue;
- var imageURL = item.getElementsByTagName("image-url")[0].firstChild.nodeValue;
- var description = item.getElementsByTagName("description")[0].firstChild.nodeValue;
- var price = item.getElementsByTagName("price")[0].firstChild.nodeValue;
- var rating = item.getElementsByTagName("rating")[0].firstChild.nodeValue;
- var shortDescription;
- if (description.length > 71) {
- shortDescription = description.substring(0,71) + "...";
- } else {
- shortDescription = description;
- }
- var i = {id: itemId, name: name, image: imageURL, thumbnail: thumbURL, shortDescription: shortDescription, description: description, price:price, rating: rating};
- items.push(i);
- }
-
- // cache the chunks
- pList.addChunk(pid, chunkId, items);
- is.addItems(items);
- is.addChunk(pid + "_" + chunkId);
-
- if (showImage && iId == null) {
- is.setGroupId(pid);
- is.showImage(items[0].id);
- } else {
- is.setGroupId(pid);
- is.showImage(iId);
- }
- is.hideProgressIndicator();
- }
-
- function ProductList() {
- var _plist = this;
- var map = new Map();
-
- this.addChunk = function(pid, chunkNumber, items) {
- map.put(pid + "_" + chunkNumber, items, true);
- }
-
- this.getChunk = function(pid, chunkNumber) {
- return map.get(pid + "_" + chunkNumber);
- }
-
- this.hasChunk = function(pid, chunkNumber) {
- return (map.get(pid + "_" + chunkNumber) != null);
- }
-
- this.contents = function() {
- return map.contents();
- }
- }
-
-
- this.disableItem=function(itemId, itemName) {
- // go out and get the categories
- // this should be made more geric
- if (confirm("Are you sure you want to effectively remove this item from Petstore?")) {
- var bindArgs = {
- url: applicationContextRoot + "/catalog?command=disable&id=" + itemId,
- mimetype: "text/xml",
- load: function(type,json) {
- //alert("The item named '" + itemName + "' has been disabled!");
- pList = new ProductList();
- is.reset();
- populateItems(is.getGroupId(), 0, 0, true);
- },
- error: ajaxBindError
- };
- dojo.io.bind(bindArgs);
- }
- }
-
-
-}
-
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp
deleted file mode 100644
index 443857b..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp
+++ /dev/null
@@ -1,95 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: catalog.jsp,v 1.22 2007/03/16 21:42:03 basler Exp $ --%>
-<script type="text/javascript" src="common.js"></script>
-<script type="text/javascript" src="scroller.js"></script>
-<link rel="stylesheet" type="text/css" href="scroller.css"></link>
-<script type="text/javascript" src="accordion.js"></script>
-<link rel="stylesheet" type="text/css" href="accordion.css"></link>
-<script type="text/javascript" src="catalog.js"></script>
-<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
-<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
-<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
-<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
-<body>
-<jsp:include page="banner.jsp" />
-<script type="text/javascript">
- dojo.event.connect(window, "onload", function(){initCatalog();});
-</script>
-<center>
- <table border="0">
- <tr>
- <td>
- <table id="accordion">
- <tr id="accordionTitle" class="accordionTitle"><td>Pets</td></tr>
- <tr><td>
- <table id="accordionBody" border="0" class="accordionBody">
- </table>
- </td></tr>
- </table>
- </td>
- <td>
- <div id="CatalogBrowser">
- <table border="0" class="slider" width="500px" >
- <tr height="415" valign="top">
- <td id="bodySpace" border="0" align="center"></td>
- </tr>
- <tr id="targetRow">
- <td width="500" height="70 align="top">
- <div class="nav" id="right_button">
- <img src="${pageContext.request.contextPath}/images/right.gif" name="nextRoll" title="Show More Items" border="0">
- </div>
- <div class="nav" id="left_button">
- <img src="${pageContext.request.contextPath}/images/left.gif" name="previousRoll" title="Show Previous Items" border="0">
- </div>
- <div id="infopane" class="infopane">
- <table class="infopaneTable">
- <tr>
- <td id="infopaneName" class="infopaneTitle">
- </td>
- <td id="infopaneRating" class="infopaneRating">
- <f:view>
- <ui:rating id="rating" maxGrade="5" includeNotInterested="false" includeClear="false"
- hoverTexts="#{RatingBean.ratingText}" notInterestedHoverText="Not Interested" clearHoverText="Clear Rating"
- grade="#{RatingBean.grade}"/>
- <f:verbatim></td><td id="infopanePrice" class="infopanePrice"></td><td id="infopanePayPal" class="infopanePayPal"></f:verbatim>
- <ui:buyNow business="donate(a)animalfoundation.com" id="buyNow1" itemName="Buy Item One"
- amount="100.00" quantity="1" type="BuyNow" postData="#{PayPalBean.postData}" target="paypal"/>
- </f:view>
- </td>
- <td id="infopaneIndicator" class="infopaneIndicator">
- </td>
- <td id="infopaneDetailsIcon">
- </td>
- </tr>
- <tr>
- <td id="infopaneShortDescription" colspan="7" class="infopaneShortDescription">
- </td>
- </tr>
- <tr style="height:20px">
- <td></td>
- </tr>
- <tr>
- <td id="infopaneDescription" colspan="6" class="infopaneDescription">
- </td>
- </tr>
- </table>
- </div>
- </td>
- </tr>
- </table>
- </td>
- <td style="vertical-align:top; width:300px; text-align:right;">
- <div id="downloadAds">
- <jsp:include page="download.jsp" />
- </div>
- </td>
- </tr>
- </table>
- </div>
- <div id="status" style="text-align:left"></div> <div id="status_2"></div>
- <div id="dstatus"></div>
- <div id="injection_point"></div>
-</center>
-<jsp:include page="footer.jsp" />
-</body>
-</html>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp-old b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp-old
deleted file mode 100644
index 13914ed..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/catalog.jsp-old
+++ /dev/null
@@ -1,95 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: catalog.jsp,v 1.20 2006/12/01 21:38:40 basler Exp $ --%>
-<script type="text/javascript" src="common.js"></script>
-<script type="text/javascript" src="scroller.js"></script>
-<link rel="stylesheet" type="text/css" href="scroller.css"></link>
-<script type="text/javascript" src="accordion.js"></script>
-<link rel="stylesheet" type="text/css" href="accordion.css"></link>
-<script type="text/javascript" src="catalog.js"></script>
-<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
-<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
-<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
-<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
-<body>
-<jsp:include page="banner.jsp" />
-<script type="text/javascript">
- dojo.event.connect(window, "onload", function(){initCatalog();});
-</script>
-<center>
- <table border="0">
- <tr>
- <td>
- <table id="accordion">
- <tr id="accordionTitle" class="accordionTitle"><td>Pets</td></tr>
- <tr><td>
- <table id="accordionBody" border="0" class="accordionBody">
- </table>
- </td></tr>
- </table>
- </td>
- <td style="min-width:500px;">
- <div id="CatalogBrowser">
- <table width="500px"border="1" class="slider" >
- <tr height="415" valign="top">
- <td id="bodySpace" border="0" align="center"></td>
- </tr>
- <tr id="targetRow">
- <td width="500px" height="70px" align="top">
- <div class="nav" id="right_button">
- <img src="${pageContext.request.contextPath}/images/right.gif" name="nextRoll" title="Show More Items" border="0">
- </div>
- <div class="nav" id="left_button">
- <img src="${pageContext.request.contextPath}/images/left.gif" name="previousRoll" title="Show Previous Items" border="0">
- </div>
- <div id="infopane" class="infopane">
- <table class="infopaneTable">
- <tr>
- <td id="infopaneName" class="infopaneTitle">
- </td>
- <td id="infopaneRating" class="infopaneRating">
- <f:view>
- <ui:rating id="rating" maxGrade="5" includeNotInterested="false" includeClear="false"
- hoverTexts="#{RatingBean.ratingText}" notInterestedHoverText="Not Interested" clearHoverText="Clear Rating"
- grade="#{RatingBean.grade}"/>
- <f:verbatim></td><td id="infopanePrice" class="infopanePrice"></td><td id="infopanePayPal" class="infopanePayPal"></f:verbatim>
- <ui:buyNow business="donate(a)animalfoundation.com" id="buyNow1" itemName="Buy Item One"
- amount="100.00" quantity="1" type="BuyNow" postData="#{PayPalBean.postData}" target="paypal"/>
- </f:view>
- </td>
- <td id="infopaneIndicator" class="infopaneIndicator">
- </td>
- <td id="infopaneDetailsIcon">
- </td>
- </tr>
- <tr>
- <td id="infopaneShortDescription" colspan="7" class="infopaneShortDescription">
- </td>
- </tr>
- <tr style="height:20px">
- <td></td>
- </tr>
- <tr>
- <td id="infopaneDescription" colspan="6" class="infopaneDescription">
- </td>
- </tr>
- </table>
- </div>
- </td>
- </tr>
- </table>
- </td>
- <td style="vertical-align:top; width:300px; text-align:right;">
- <div id="downloadAds">
- <jsp:include page="download.jsp" />
- </div>
- </td>
- </tr>
- </table>
- </div>
- <div id="status" style="text-align:left"></div> <div id="status_2"></div>
- <div id="dstatus"></div>
- <div id="injection_point"></div>
-</center>
-<jsp:include page="footer.jsp" />
-</body>
-</html>
\ No newline at end of file
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/common.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/common.js
deleted file mode 100644
index 03a3ba2..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/common.js
+++ /dev/null
@@ -1,77 +0,0 @@
-
- function ajaxBindError(type, errObj) {
- // can't use the error page, because unless and exception in the internal servlet container
- // nullpointer exceptions will be thrown
- //window.location="./systemerror.jsp?message=" + errObj.message;
-
- alert("An Exception has been encountered on the server side during an Ajax request. Please see the server logs for more information " + errObj.message);
- }
-
-
- function debugProperties(namex) {
- var listx="";
- var ob=namex;
- for(xx in ob) {
- listx += xx + " = " + ob[xx] + "<br/>"
- }
- //document.write(listx);
- alert(listx);
- }
-
-
- function printDebug(argx) {
- if (typeof debug != 'undefined') {
- document.getElementById("status").innerHTML = argx + "<br\>" + document.getElementById("status").innerHTML;
- }
- }
-
-
- function Map() {
- var size = 0;
- var keys = [];
- var values = [];
-
- this.put = function(key, value, replace) {
- if (this.get(key) == null) {
- keys[size] = key;
- values[size] = value;
- size++;
- } else if (replace) {
- for (i=0; i < size; i++) {
- if (keys[i] == key) {
- values[i] = value;
- }
- }
- }
- }
-
- this.get = function(key) {
- for (i=0; i < size; i++) {
- if (keys[i] == key) {
- return values[i];
- }
- }
- return null;
- }
-
- this.clear = function() {
- size = 0;
- keys = [];
- values = [];
- }
-
- // return keys show can show main image
- this.getKeys = function() {
- return keys;
- }
-
- // dump contents of map keys as string
- this.contents = function() {
- var retx="";
- for(ii=0; ii < size; ii++) {
- retx += keys[ii] + ", ";
- }
- return retx;
- }
-
- }
\ No newline at end of file
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/download.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/download.jsp
deleted file mode 100644
index 20ef584..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/download.jsp
+++ /dev/null
@@ -1,22 +0,0 @@
-<div id="downloadAds" style="text-align:center; border-style:none; width:100%;">
- <table style="width:100%;">
- <tr>
- <td style="text-align:center;">
- <a href="http://java.sun.com/javaee/downloads/index.jsp " target="downloads"><img style="border:none" src="./images/ad-sdk.jpg" alt="Download Java EE 5 SDK"/></a>
- <br/>
- </td>
- </tr>
- <tr>
- <td style="text-align:center;">
- <a href="http://www.netbeans.org/downloads/index.html " target="downloads"><img style="border:none" src="./images/ad-netbeans.jpg" alt="Download Netbeans IDE"/></a>
- <br/>
- </td>
- </tr>
- <tr>
- <td style="text-align:center;">
- <a href="http://java.com/en/download/index.jsp " target="downloads"><img style="border:none" src="./images/ad-jre.jpg" alt="Download Java SE"/></a>
- <br/>
- </td>
- </tr>
- </table>
-</div>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.js
deleted file mode 100644
index 65855c2..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.js
+++ /dev/null
@@ -1,54 +0,0 @@
-dojo.require("dojo.io");
-function checkAdPage() {
- var bindArgs = {
- // check to see if an updated page is available
- URL: "http://localhost:8080/petstore/downloadAd.txt ",
- mimetype: "text/plain",
- load: returnFunctionx,
- error: ajaxBindError};
-
- // dispatch the request
- dojo.io.bind(bindArgs);
-}
-
-function returnFunctionx(type, data, evt) {
- // statically setup popup for simple case
- // check return of the dojo call to make sure it is valid
- if (evt.readyState == 4) {
- if (evt.status == 200) {
- alert("data = " + data);
- document.getElementById("downloadAds").innerHTML=data;
- }
- }
-}
-
-
-var req;
-
-function checkAdPageMark() {
- // calculate arrow and border image location
- req=initRequest();
-
- url="http://blueprints.dev.java.net/petstore/downloadAd.txt ",
- req.onreadystatechange = returnFunctionxMark;
- req.open("GET", url, true);
- req.send(null);
-}
-
-
-function returnFunctionxMark() {
- if (req.readyState == 4) {
- if (req.status == 200) {
- alert("data = " + req.responseText);
- document.getElementById("downloadAds").innerHTML=req.responseText;
- }
- }
-}
-
-initRequest=function() {
- if (window.XMLHttpRequest) {
- return new XMLHttpRequest();
- } else if (window.ActiveXObject) {
- return new ActiveXObject("Microsoft.XMLHTTP");
- }
-}
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.json b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.json
deleted file mode 100644
index 3bbf564..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.json
+++ /dev/null
@@ -1,7 +0,0 @@
-jsonpTest({"keyId":"TestData"});
-
-function testexample() {
- alert("testexample!!");
-}
-
-testexample();
\ No newline at end of file
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.txt b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.txt
deleted file mode 100644
index e9a0944..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/downloadAd.txt
+++ /dev/null
@@ -1 +0,0 @@
-<div id='downloadAds' style='text-align:center; border-style:double; width:100%;'> <table style='width:100%'> <tr> <th style='text-align:center; border-bottom:thin solid black;'>DOWNLOADS Blueprints</th> </tr> <tr> <td style='text-align:center;'> <a href='http://java.sun.com/javaee/downloads/index.jsp ' target='downloads'><img style='border:none' src='./images/ad-sdk.jpg' alt='Download Java EE 5 SDK'/></a> </td> </tr> <tr> <td style='text-align:center;'> <a href='http://www.netbeans.org/downloads/index.html ' target='downloads'><img style='border:none' src='./images/ad-netbeans.jpg' alt='Download Netbeans IDE'/></a> </td> </tr> <tr> <td style='text-align:center;'> <a href='http://java.com/en/download/index.jsp ' target='downloads'><img style='border:none' src='./images/ad-jre.jpg' alt='Download Java SE'/></a> </td> </tr> </table></div>
\ No newline at end of file
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/engine.js b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/engine.js
deleted file mode 100644
index 0e5b14e..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/engine.js
+++ /dev/null
@@ -1,241 +0,0 @@
-/* Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: engine.js,v 1.10 2006/05/03 22:00:32 inder Exp $ */
-
-function Engine () {
-
- /**
- *
- * Load template text aloing with an associated script
- *
- * Argument p properties are as follows:
- *
- * url : Not required but used if you want to get the template from
- * something other than the injection serlvet. For example if
- * you want to load content directly from a a JSP or HTML file.
- *
- * p.template : Not required if you specficy a url property Otherewise this
- * is the name of the template file.
- *
- * p.initFunction: Not required. This function or function pointer will be called
- * after the template text and script are loaded. The result of
- * the evaluated script will be accessible in the context of
- * this function.
- *
- * p.injectionPoint: Not required. This is the id of an element into. If this is
- * not specfied a div will be created under the roon node of
- * the document and the template will be injected into it.
- * Content is injected by setting the innerHTML property
- * of an element to the template text.
- */
- this.inject = function (p) {
- var targetUrl;
- if (!p.url) targetUrl = "controller?command=content&target=/" + p.template;
- else targetUrl = p.url;
- var templateArgs = {
- url: targetUrl,
- mimetype: "text/html",
- load: function(type, data) {
- //if no parent is given append to the document root
- var nData = includeEmbeddedResources(data, p.initFunction );
- if (!p.injectionPoint) {
- var injectionPoint = document.createElement("div");
- injectionPoint.innerHTML = nData;
- document.firstChild.appendChild(injectionPoint);
- } else {
- p.injectionPoint.innerHTML = nData;
- }
- if (p.script) {
- // now load the associated JavaScript
- loadScript(p.script,p.initFunction);
- }
- }
- };
- dojo.io.bind(templateArgs);
- }
-
- function loadScript(targetURL,callback) {
- var templateArgs = {
- url: targetURL,
- mimetype: "text/plain",
- load: callback
- };
- dojo.io.bind(templateArgs);
- }
-
- /**
- * If were returning an text document remove any script in the
- * the document and add it to the global scope using a time out.
- */
- function includeEmbeddedResources(target, initFunction) {
- var bodyText = "";
- var embeddedScripts = [];
- var embeddedStyles = [];
- var scriptReferences = [];
- var styleReferences = [];
- var styles = [];
- // recursively go through and weed out the scripts
- // TODO: Use some better REGEX processing
- // TODO: Also support single quotes
- while (target.indexOf("<script") != -1) {
- var realStart = target.indexOf("<script");
- var scriptSourceStart = target.indexOf("src=", (realStart));
- var scriptElementEnd = target.indexOf(">", realStart);
- var end = target.indexOf("</script>", (realStart)) + "</script>".length;
- if (realStart != -1 && scriptSourceStart != -1) {
- var scriptSourceName;
- var scriptSourceLinkStart= scriptSourceStart + 5;
- var scriptSourceLinkEnd= target.indexOf("\"", (scriptSourceLinkStart + 1));
- if (scriptSourceStart < scriptElementEnd) {
- scriptSourceName = target.substring(scriptSourceLinkStart, scriptSourceLinkEnd);
- // prevent multiple inclusions of dojo.js.
- // there is no way you would get to this point without dojo being included
- if (scriptSourceName.indexOf("dojo.js") == -1) {
- scriptReferences.push(scriptSourceName);
- }
- }
- }
- // now remove the script body
- var scriptBodyStart = scriptElementEnd + 1;
- var sBody = target.substring(scriptBodyStart, end - "</script>".length);
- if (sBody.length > 0) {
- embeddedScripts.push(sBody);
- }
- //remove script
- target = target.substring(0, realStart) + target.substring(end, target.length);
- }
-
- while (target.indexOf("<style") != -1) {
- var realStart = target.indexOf("<style");
- var styleElementEnd = target.indexOf(">", realStart);
- var end = target.indexOf("</style>", (realStart)) ;
- var styleBodyStart = styleElementEnd + 1;
- var sBody = target.substring(styleBodyStart, end);
- if (sBody.length > 0) {
- embeddedStyles.push(sBody);
- }
- //remove style
- target = target.substring(0, realStart) + target.substring(end + "</style>".length, target.length);
- }
- // get the links
- while (target.indexOf("<link") != -1) {
- var realStart = target.indexOf("<link");
- var styleSourceStart = target.indexOf("href=", (realStart));
- var styleElementEnd = target.indexOf(">", realStart) +1;
- if (realStart != -1 && styleSourceStart != -1) {
- var styletSourceName;
- var styleSourceLinkStart= styleSourceStart + 6;
- var styleSourceLinkEnd= target.indexOf("\"", (styleSourceLinkStart + 1));
- if (styleSourceStart < styleElementEnd) {
- styleSourceName = target.substring(styleSourceLinkStart, styleSourceLinkEnd);
- styleReferences.push(styleSourceName);
- }
- //remove style
- target = target.substring(0, realStart) + target.substring(styleElementEnd, target.length);
- }
- }
-
- var head = document.getElementsByTagName("head")[0];
-
- // inject the links
- for(var loop = 0; loop < styleReferences.length; loop++) {
- var link = document.createElement("link");
- link.href = styleReferences[loop];
- link.type = "text/css";
- link.rel = "stylesheet";
- head.appendChild(link);
- }
-
- var stylesElement;
- if (embeddedStyles.length > 0) {
- stylesElement = document.createElement("style");
- stylesElement.type="text/css";
- var stylesText;
- for(var loop = 0; loop < embeddedStyles.length; loop++) {
- stylesText = stylesText + embeddedStyles[loop];
- }
- if (document.styleSheets[0].cssText) {
- document.styleSheets[0].cssText = document.styleSheets[0].cssText + stylesText;
- } else {
- stylesElement.appendChild(document.createTextNode(stylesText));
- head.appendChild(stylesElement);
- }
- }
-
- scriptLoader(scriptReferences, 0, function() {
- this.embeddedScripts = embeddedScripts;
- // evaluate the embedded javascripts in the order they were added
- // consider using an onload handler
- for(var loop = 0; loop < embeddedScripts.length; loop++) {
- //alert("evaluating " + embeddedScripts[loop]);
- var script = embeddedScripts[loop];
- // append to the script a method to call the scriptLoaderCallback
- eval(script);
- if (loop == (embeddedScripts.length -1)) {
- initFunction();
- }
- }
- });
-
- return target;
- }
-
-
- /**
- * Load the scripts in order and load them one after on another
- */
- function scriptLoader(scripts, index, callbackFunction) {
- var head = document.getElementsByTagName("head").item(0);
- var scriptElement = document.createElement("script");
- scriptElement.id = "c_script_" + index;
- scriptElement.type = "text/javascript";
-
- var loadHandler = function () {
- if (index < scripts.length && index != scripts.length -1) {
- scriptLoader(scripts, ++index, callbackFunction);
- } else {
- callbackFunction();
- }
- }
- if (typeof scriptElement.onreadystatechange != 'undefined') {
- scriptElement.onreadystatechange = function () {
- if (this.readyState == 'loaded') {
- loadHandler();
- }
- };
- }
- scriptElement.onload = loadHandler;
-
- // Safari not seeing the onload event and does not support the onreadystate
- if (navigator.userAgent.toLowerCase().indexOf("safari") != -1) {
- scriptElement.src = scripts[index];
- setTimeout(loadHandler, 0);
- }
- head.appendChild(scriptElement);
- setTimeout("document.getElementById('c_script_" + index + "').src ='" + scripts[index] + "'", 0);
-
- scriptElement = null;
- head = null;
- }
-
- /**
- * If were returning an XML document remove any script in the
- * the document and add it to the global scope using a time out.
- */
- function includeEmbeddedScripts(xmlDocument) {
- var items = new Array();
- var xmlDocument = document.getElementsByTagName("script");
-
- for(var loop = 0; loop < targets.length; loop++) {
- var children = targets[loop].childNodes;
- var iScript = "";
- for(var innerLoop = 0; innerLoop < children.length; innerLoop++) {
- iScript += children[innerLoop].data;
- }
- items.add(iScript);
- children[loop].parentNode.removeChild(children[loop]);
- }
- for(var loop = 0; loop < items.length; loop++) {
- setTimeout(items[loop],0);
- }
- }
-}
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileupload.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileupload.jsp
deleted file mode 100644
index bb8fb85..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileupload.jsp
+++ /dev/null
@@ -1,266 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: fileupload.jsp,v 1.57 2007/03/08 21:58:48 inder Exp $ --%>
-
-<%@page contentType="text/html"%>
-<%@page pageEncoding="UTF-8"%>
-<%@page import="com.sun.javaee.blueprints.petstore.util.PetstoreConstants"%>
-<%@taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %>
-<%@taglib uri="http://java.sun.com/jsf/html " prefix="h" %>
-<%@taglib uri="http://java.sun.com/jsf/core " prefix="f" %>
-<%@taglib prefix="ui" uri="http://java.sun.com/blueprints/ui " %>
-
-<html>
- <head>
- <title>Petstore Seller page</title>
- <script type="text/javascript">
- var submittingForm=false;
-
- function testRetFunction(type, data, evt){
- if (evt.readyState == 4) {
- if(evt.status == 200) {
- // check for error
- submittingForm=false;
- var resultx=data.getElementsByTagName("response")[0];
- var message=resultx.getElementsByTagName("message")[0].childNodes[0].nodeValue;
- if(message == "Captchas Filter Error") {
- // captcha error
- alert("Authorization failed : please enter the correct captcha string");
- } else if(message == "Validation Error") {
- alert("Validation failed on the Server :\n" + resultx.getElementsByTagName("detail")[0].childNodes[0].nodeValue);
- } else if(message == "Upload Size Error") {
- alert("The size of the uploaded image must not be more than 100 KB");
- } else {
- // fileupload complete
- var thumbpath=resultx.getElementsByTagName("thumbnail")[0].childNodes[0].nodeValue;
- var productId=resultx.getElementsByTagName("productId")[0].childNodes[0].nodeValue;
- var itemid=resultx.getElementsByTagName("itemId")[0].childNodes[0].nodeValue;
- // forward to status page
- location.href="fileuploadstatus.jsp?message=" + message + "&id=" + itemid + "&productId=" + productId + "&thumb=" + thumbpath;
- }
- } else {
- // server error, send to error page
- // can't forward to errorpage because null pointer gets thrown on lookup of status code ("javax.servlet.error.status_code")
- //ajaxBindError(type, data.message);
- alert("Persistence failed : Please check if the server logs for more information!")
- }
- }
- }
-
-
- function storeCookie() {
- currentcap = "j_captcha_response="+document.getElementById("TestFileuploadForm:captcharesponse").value;
- document.cookie = currentcap;
- }
-
- function extractCity(citystatezip) {
- var index = citystatezip.indexOf(',');
- var nextcity = citystatezip.substring(0, index+4);
- return nextcity;
- }
-
- function chooseCity(city) {
- var index = city.indexOf(',');
- var state = city.substring(index+2, index+4);
- var zip = city.substring(index+5);
- city = city.substring(0, index);
-
- document.getElementById('TestFileuploadForm:cityField').value = city;
- document.getElementById('TestFileuploadForm:stateField').value = state;
- document.getElementById('TestFileuploadForm:zipField').value = zip;
- }
-
- function fileuploadOnsubmit() {
- if(!submittingForm) {
- var valMess="";
-
- // save rich text editor text to element
- var descx=dojo.widget.byId('rtEditor').getEditorContent()
- var lowDescx=descx.toLowerCase();
-
- // START: check validation
- if(dojo.byId("TestFileuploadForm:name").value == "") {
- valMess += "Error: Pet Name is required.\n";
- }
-
- // make sure there isn't a script/link tag in the description
- if(lowDescx == "" || lowDescx.indexOf("<script") > -1 || lowDescx.indexOf("<link") > -1) {
- valMess += "Error: The Description must exist and the field can't have a '<script>' and/or a '<link>' tag in it\n";
- }
-
- // make sure price is a number
- var pricex=dojo.byId("TestFileuploadForm:price").value;
- if(pricex == "" || isNaN(parseInt(pricex))) {
- // price should be a number
- valMess += "Error: Price should should exist and be a number in American Dollars in the format '*.00'.\n";
- }
-
- // make sure the upload file ends in an suffix
- var filex=dojo.byId("fileToUploadId").value;
- var lengthx=filex.length;
- var suffix=filex.substr(lengthx-4).toLowerCase();
- if(lengthx < 1 || (suffix != ".jpg" && suffix != ".gif" && suffix != ".png")) {
- // not a proper upload so error
- valMess += "Error: The image upload file must exist and be of type .jpg, .gif or .png\n";
- }
-
-
- // make sure make and address is entered
- if(dojo.byId("TestFileuploadForm:firstName").value == "") {
- // price should be a number
- valMess += "Error: First Name is required.\n";
- }
- if(dojo.byId("TestFileuploadForm:lastName").value == "") {
- valMess += "Error: Last Name is required.\n";
- }
- if(dojo.byId("TestFileuploadForm:street1").value == "") {
- valMess += "Error: Street is required.\n";
- }
- if(dojo.byId("TestFileuploadForm:cityField").value == "") {
- valMess += "Error: City is required.\n";
- }
- if(dojo.byId("TestFileuploadForm:stateField").value == "") {
- valMess += "Error: State is required.\n";
- }
- if(dojo.byId("TestFileuploadForm:zipField").value == "") {
- valMess += "Error: Zip Code is required.\n";
- }
-
- if(valMess != "") {
- // error, show message
- alert(valMess + "\nPlease addresses the error(s) and re-submit your entry!");
- } else {
- // no validation errors, so submit form
- submittingForm=true;
- // set description
- dojo.byId('description').value=descx;
-
- storeCookie()
- document.forms['TestFileuploadForm'].onsubmit();
- }
- }
- }
-
- function showFU() {
- document.getElementById("fucomponent").style.visibility = "visible";
- }
-
- function switchPanes(fromDivId, toDivId) {
- // show pane
- var divx=document.getElementById(fromDivId);
- divx.style.visibility='hidden';
- divx=document.getElementById(toDivId);
- divx.style.visibility='visible';
- }
-</script>
-<style>
-span.button {
- background-color: #6699CC;
- color: white;
- cursor:pointer;
- border: thin outset black;
- padding: 1px 5px;
-}
-div.pane {
- width: 90%;
- background-color: #EEEEEE;
- border: thin double blue;
- padding: .5cm;
- font: 12px arial;
-}
-
-.nameCol {
- width: 45%;
-}
-.dataCol {
- width: 55%;
-}
-
-</style>
- </head>
- <body onload="showFU()">
- <jsp:include page="banner.jsp"/>
- <script>dojo.require("dojo.widget.Editor2");</script>
- <br/>
- <div id="fucomponent" style="visibility:hidden;">
- <f:view>
-
- <ui:fileUploadTag id="TestFileuploadForm" serverLocationDir="#{FileUploadBean.uploadImageDirectory}"
- postProcessingMethod="#{FileUploadBean.postProcessingMethod}"
- retMimeType="text/xml" retFunction="testRetFunction"
- progressBarDivId="progress" progressBarSize="40">
- <div id="pane2" class="pane" style="visibility: hidden;">
- <h:panelGrid border="0" columns="2" style="width: 100%" columnClasses="nameCol, dataCol">
- <f:facet name="header">
- <h:outputText value="Information about yourself"/>
- </f:facet>
- <h:outputText value="*First Name"/>
- <h:inputText size="20" id="firstName"></h:inputText>
- <h:outputText value="*Last Name"/>
- <h:inputText size="20" id="lastName"></h:inputText>
- <h:outputText value="Seller Email"/>
- <h:inputText size="20" id="email"></h:inputText>
- <h:outputText value="*Street"/>
- <h:inputText size="20" id="street1"></h:inputText>
- <h:outputText value="*City"/>
- <ui:autoComplete size="20" maxlength="10" id="cityField"
- completionMethod="#{AutocompleteBean.completeCity}"
- value="#{AddressBean.city}" required="true"
- ondisplay="function(item) { return extractCity(item); }"
- onchoose="function(item) { return chooseCity(item); }" />
- <h:outputText value="*State"/>
- <ui:autoComplete size="2" maxlength="10" id="stateField"
- completionMethod="#{AutocompleteBean.completeState}"
- value="#{AddressBean.state}" required="true" />
- <h:outputText value="*Zip Code"/>
- <h:inputText size="5" id="zipField" value="#{AddressBean.zip}" required="true" />
-
- <h:outputText value="Enter the text as it is shown below (case insensitive)"/>
- <h:outputText />
- <h:graphicImage id="captchaImg" url="CaptchaServlet"/>
- <h:inputText id="captcharesponse"></h:inputText>
- <br/><span class="button" onclick="switchPanes('pane2', 'pane1');"><< Previous</span>
- <span class="button" onclick="fileuploadOnsubmit()">Submit</span>
- <br/><div id="progress"></div><br/>
-
- </h:panelGrid>
- </div>
- <div class="pane"style="position:absolute; top:125px;" id="pane1">
- <h:panelGrid border="0" columns="2" style="width: 100%" columnClasses="nameCol, dataCol">
- <f:facet name="header">
- <h:outputText value="Information about your pet"/>
- </f:facet>
-
- <h:outputText value="Category"/>
- <h:selectOneMenu id="product">
- <f:selectItems value="#{FileUploadBean.products}"/>
- </h:selectOneMenu>
-
- <h:outputText value="*Pet's Name"/>
- <h:inputText size="20" id="name"></h:inputText>
-
- <h:outputText value="*Description (3 lines max display in catalog)"/>
-
- <div style="border-style:inset; border-width:thin; background-color:white">
- <textarea wrap="soft" dojoType="Editor2" widgetId="rtEditor" id="description" name="TestFileuploadForm:description"
- toolbarTemplatePath="${pageContext.request.contextPath}/rteToolBar.html"></textarea>
- </div>
-
- <h:outputText value="*Price (is US dollars)"/>
- <h:inputText size="20" id="price"></h:inputText>
-
- <h:outputText value="*Image File"/>
- <input type="file" size="20" name="fileToUpload" id="fileToUploadId"/>
-
- <h:outputText value="Custom Tag Keywords (separated by spaces)"/>
- <h:inputText size="20" id="tags"></h:inputText>
- </h:panelGrid>
- <br/><span class="button" onclick="switchPanes('pane1', 'pane2');">Next >></span>
- </div>
- Required fields are designated by a *
- </ui:fileUploadTag>
- </f:view>
- </div>
-
- <jsp:include page="footer.jsp" />
- </body>
-</html>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileuploadstatus.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileuploadstatus.jsp
deleted file mode 100644
index 50e3730..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/fileuploadstatus.jsp
+++ /dev/null
@@ -1,134 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: fileuploadstatus.jsp,v 1.8 2006/05/05 21:05:47 yutayoshida Exp $ --%>
-
-<%@page contentType="text/html"%>
-<%@page pageEncoding="UTF-8"%>
-
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>Seller Photo Submit Status</title>
- <style type="text/css">
- #status { background-color : #E0FFFF;
- border : none;
- width : 50%;
- }
- </style>
- <script type="text/javascript">
- window.onload = function() {
- var thumbfile = "${param.thumb}";
- if (thumbfile == "") {
- thumbfile = "${sessionScope['fileuploadResponse'].thumbnail}";
- }
- thumbpath = "http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.servletContext.contextPath}/ImageServlet/";
- thumbpath += thumbfile;
- var divNode = document.getElementById("thumb");
- var imgNode = document.createElement("img");
- imgNode.setAttribute("src", thumbpath);
- divNode.appendChild(imgNode);
-
- // initialize buttons
- initButtonImage();
- }
-
- var imageLayerId = new Array();
- var imageLayerG = new Array();
- var imageLayerC = new Array();
- var imageText = new Array();
- function initButtonImage(){
- imageLayerId[1] ="seller"
- imageLayerG[1] = "../images/seller-thumb-g.jpg";
- imageLayerC[1] = "../images/seller-thumb.jpg";
- imageLayerId[2] ="catalog"
- imageLayerG[2] = "../images/catalog-thumb-g.jpg";
- imageLayerC[2] = "../images/catalog-thumb.jpg";
- imageLayerId[3] ="home"
- imageLayerG[3] = "../images/index-thumb-g.jpg";
- imageLayerC[3] = "../images/index-thumb.jpg";
-
- imageText[1] = "Submit another pet";
- imageText[2] = "Go to your pet page";
- imageText[3] = "Go back to PetStore home";
- }
-
- function highlightButton(n) {
- switchButton(true, n);
- }
- function darkenButton(n) {
- switchButton(false, n);
- }
-
- function switchButton(highlight, n){
- var id = imageLayerId[n];
- var btn = document.getElementById(id);
- if (highlight) {
- btn.src = imageLayerC[n];
- popupText(imageText[n]);
- } else {
- btn.src = imageLayerG[n];
- popupText(null);
- }
- }
- var Mx;
- var My;
- function popupText(txt) {
- var pNode = document.getElementById("popupText");
- var rx;
- var ry;
- if (document.all) {
- rx = event.clientX + document.body.scrollLeft +10;
- ry = event.clientY + document.body.scrollTop -20;
- } else {
- rx = Mx + 10;
- ry = My -20;
- }
- if (txt) {
- pNode.style.display = "block";
- pNode.style.left = rx + "px";
- pNode.style.top = ry + "px";
- pNode.innerHTML = txt;
- } else {
- pNode.style.display = "none";
- pNode.innerHTML = "";
- }
- }
- function getMouseXY(mEvent) {
- Mx = mEvent.pageX;
- My = mEvent.pageY;
- }
- window.onmousemove = getMouseXY;
- </script>
- </head>
- <body>
- <jsp:include page="banner.jsp"/>
- <center>
- <div id="status">
- <h4>${param.message}</h4>
- Here's the uploaded photo of your pet<br/><br/>
- <div id="thumb"></div>
- <br/><br/>
- Would you like to :-<br/><br/>
-
- <div id="popupText" style="position:absolute;z-index:2;border:1px solid;padding:5px;
- border-color:blue;font-size:10pt;background-color:#00ffff;color:blue;display:none"></div>
- <table border="0" cellpadding="4" cellspacing="4">
- <tr>
- <td><a href="fileupload.jsp" onmouseover="highlightButton(1)" onmouseout="darkenButton(1)">
- <img name="seller" id="seller" src="../images/seller-thumb-g.jpg" alt="seller" width="105" height="60" border="0">
- </a>
- </td>
- <td><a href="catalog.jsp?pid=${param.productId}&itemId=${param.id}" onmouseover="highlightButton(2)" onmouseout="darkenButton(2)">
- <img name="catalog" id="catalog" src="../images/catalog-thumb-g.jpg" alt="catalog" width="105" height="60" border="0">
- </a>
- </td>
- <td><a href="http://${pageContext.request.serverName}:${pageContext.request.serverPort}${pageContext.servletContext.contextPath}/index.jsp" onmouseover="highlightButton(3)" onmouseout="darkenButton(3)">
- <img name="home" id="home" src="../images/index-thumb-g.jpg" alt="index" width="105" height="60" border="0">
- </a>
- </td>
- </tr>
- </table>
- </div>
- </center>
- <jsp:include page="footer.jsp" />
- </body>
-</html>
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/footer.jsp b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/footer.jsp
deleted file mode 100644
index 8fda523..0000000
--- a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/footer.jsp
+++ /dev/null
@@ -1,15 +0,0 @@
-<%-- Copyright 2006 Sun Microsystems, Inc. All rights reserved. You may not modify, use, reproduce, or distribute this software except in compliance with the terms of the License at: http://developer.sun.com/berkeley_license.html
-$Id: footer.jsp,v 1.10 2007/01/31 19:40:34 basler Exp $ --%>
-
-<hr/>
-<center>
- If you have any questions or suggestions, please use the <a
- href="https://blueprints.dev.java.net/feedback.html " target="petstore">feedback page</a>.
- <br/>
- To access the latest versions of any of the BluePrints projects, please use the <a
- href="https://blueprints.dev.java.net/downloads.html " target="petstore">download page</a>.
- <br/>
- <a href="http://blueprints.dev.java.net/ " target="petstore">Java BluePrints</a> |
- <a href="http://sun.com/ " target="petstore">Sun Microsystems</a> © 2007 Sun Microsystems Inc. All rights reserved. Use is subject to license terms.
-</center>
-
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081-s.jpg
deleted file mode 100644
index 734f0ba..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081.jpg
deleted file mode 100644
index 1d6b615..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9081.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083-s.jpg
deleted file mode 100644
index d50fc6f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083.jpg
deleted file mode 100644
index 77fb082..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9083.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084-s.jpg
deleted file mode 100644
index 93a3832..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084.jpg
deleted file mode 100644
index b7c7c3b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9084.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086-s.jpg
deleted file mode 100644
index 0c9ce17..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086.jpg
deleted file mode 100644
index caaf6a7..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9086.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088-s.jpg
deleted file mode 100644
index 6c7d06e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088.jpg
deleted file mode 100644
index f7daf7a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9088.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099-s.jpg
deleted file mode 100644
index 2794a4b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099.jpg
deleted file mode 100644
index 57175e3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9099.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100-s.jpg
deleted file mode 100644
index d1b3610..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100.jpg
deleted file mode 100644
index dd57db1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9100.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101-s.jpg
deleted file mode 100644
index 2f14c53..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101.jpg
deleted file mode 100644
index 334a0f8..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9101.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102-s.jpg
deleted file mode 100644
index 6bec9fa..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102.jpg
deleted file mode 100644
index 6219a97..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9102.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103-s.jpg
deleted file mode 100644
index 61b9b59..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103.jpg
deleted file mode 100644
index d4a91e0..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9103.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104-s.jpg
deleted file mode 100644
index 9c7c4ab..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104.jpg
deleted file mode 100644
index 93eb9da..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9104.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107-s.jpg
deleted file mode 100644
index cacb8f6..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107.jpg
deleted file mode 100644
index f1da9d8..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9107.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109-s.jpg
deleted file mode 100644
index a999838..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109.jpg
deleted file mode 100644
index e3eeb3e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9109.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113-s.jpg
deleted file mode 100644
index bf3aa59..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113.jpg
deleted file mode 100644
index 990e44b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9113.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115-s.jpg
deleted file mode 100644
index 873beb5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115.jpg
deleted file mode 100644
index e9f2fbb..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9115.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117-s.jpg
deleted file mode 100644
index 4119ae3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117.jpg
deleted file mode 100644
index efa8fa8..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9117.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118-s.jpg
deleted file mode 100644
index 6ac0c46..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118.jpg
deleted file mode 100644
index 1ab033b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9118.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122-s.jpg
deleted file mode 100644
index 4b75817..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122.jpg
deleted file mode 100644
index 0bbad05..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9122.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123-s.jpg
deleted file mode 100644
index f63f01a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123.jpg
deleted file mode 100644
index 10f22cc..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9123.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125-s.jpg
deleted file mode 100644
index e18660f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125.jpg
deleted file mode 100644
index e651619..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9125.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127-s.jpg
deleted file mode 100644
index 3f93502..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127.jpg
deleted file mode 100644
index d33f856..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9127.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129-s.jpg
deleted file mode 100644
index 43cd251..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129.jpg
deleted file mode 100644
index aa0820c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9129.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134-s.jpg
deleted file mode 100644
index 8b73de1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134.jpg
deleted file mode 100644
index 248ca28..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9134.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138-s.jpg
deleted file mode 100644
index 0c3fb87..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138.jpg
deleted file mode 100644
index ff93f90..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9138.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142-s.jpg
deleted file mode 100644
index 4571a4b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142.jpg
deleted file mode 100644
index 647323b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9142.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149-s.jpg
deleted file mode 100644
index e870f66..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149.jpg
deleted file mode 100644
index 23dd110..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9149.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154-s.jpg
deleted file mode 100644
index 3355eaa..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154.jpg
deleted file mode 100644
index 531ec1e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9154.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155-s.jpg
deleted file mode 100644
index 9cd85f5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155.jpg
deleted file mode 100644
index 72377b5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9155.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156-s.jpg
deleted file mode 100644
index 2788d06..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156.jpg
deleted file mode 100644
index 2b836df..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9156.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157-s.jpg
deleted file mode 100644
index 9ef87c3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157.jpg
deleted file mode 100644
index 753d1e9..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9157.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158-s.jpg
deleted file mode 100644
index 29953c4..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158.jpg
deleted file mode 100644
index a4a0247..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9158.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159-s.jpg
deleted file mode 100644
index 7caf368..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159.jpg
deleted file mode 100644
index 9f18ed6..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9159.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162-s.jpg
deleted file mode 100644
index 65bc52f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162.jpg
deleted file mode 100644
index b0f299d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9162.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165-s.jpg
deleted file mode 100644
index d1e9cc3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165.jpg
deleted file mode 100644
index 862c6f8..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/CIMG9165.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-jre.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-jre.jpg
deleted file mode 100644
index 5c7b519..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-jre.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-netbeans.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-netbeans.jpg
deleted file mode 100644
index 079b2fa..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-netbeans.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-sdk.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-sdk.jpg
deleted file mode 100644
index 2a1a88a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ad-sdk.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise-thumb.jpg
deleted file mode 100644
index 4d1ed42..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise.jpg
deleted file mode 100644
index 87ea286..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2-thumb.jpg
deleted file mode 100644
index 7b76088..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2.jpg
deleted file mode 100644
index 8005ff3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/african-spurred-tortoise2.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony-s.jpg
deleted file mode 100644
index 4b21f49..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony.jpg
deleted file mode 100644
index 88a889c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/anthony.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey-s.jpg
deleted file mode 100644
index 8adf561..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey.jpg
deleted file mode 100644
index c262965..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bailey.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/banner_logo.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/banner_logo.gif
deleted file mode 100644
index 85de81a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/banner_logo.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird1.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird1.gif
deleted file mode 100644
index 06f1abe..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird1.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird2.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird2.gif
deleted file mode 100644
index 9601f1c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird2.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird3.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird3.gif
deleted file mode 100644
index f48a7ec..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird3.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird4.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird4.gif
deleted file mode 100644
index eaaa3e5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird4.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird5.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird5.gif
deleted file mode 100644
index 9f440f1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird5.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird6.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird6.gif
deleted file mode 100644
index affd8e0..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bird6.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/birds_icon.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/birds_icon.gif
deleted file mode 100644
index 8b14629..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/birds_icon.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit-s.jpg
deleted file mode 100644
index 8c54af1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit.jpg
deleted file mode 100644
index ccdea14..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/biscuit.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob-s.jpg
deleted file mode 100644
index b3f1d09..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob.jpg
deleted file mode 100644
index d3dcfd7..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/bob.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle-thumb.jpg
deleted file mode 100644
index a4b48da..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle.jpg
deleted file mode 100644
index 5a172c5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2-thumb.jpg
deleted file mode 100644
index 40303af..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2.jpg
deleted file mode 100644
index 83d74d2..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle2.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3-thumb.jpg
deleted file mode 100644
index 004dfe3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3.jpg
deleted file mode 100644
index 3e77142..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/box-turtle3.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise-thumb.jpg
deleted file mode 100644
index 4c260e8..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise.jpg
deleted file mode 100644
index b146396..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/california-desert-tortoise.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-med.jpg
deleted file mode 100644
index 742336f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-thumb.jpg
deleted file mode 100644
index e5bbc24..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/carp-car-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat1.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat1.gif
deleted file mode 100644
index 1fd4d1c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat1.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat10.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat10.gif
deleted file mode 100644
index 8bc7f6c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat10.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat11.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat11.gif
deleted file mode 100644
index a51bc96..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat11.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat12.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat12.gif
deleted file mode 100644
index e594c67..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat12.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat2.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat2.gif
deleted file mode 100644
index 6ac8718..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat2.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat3.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat3.gif
deleted file mode 100644
index 4716f5d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat3.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat4.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat4.gif
deleted file mode 100644
index 0793e3f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat4.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat5.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat5.gif
deleted file mode 100644
index 2d289ba..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat5.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat6.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat6.gif
deleted file mode 100644
index 2ea6132..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat6.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat7.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat7.gif
deleted file mode 100644
index 159ba6a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat7.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat8.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat8.gif
deleted file mode 100644
index a9ed7c9..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat8.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat9.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat9.gif
deleted file mode 100644
index 02faffb..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cat9.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb-g.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb-g.jpg
deleted file mode 100644
index 1a13b11..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb-g.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb.jpg
deleted file mode 100644
index d6148de..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/catalog-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cats_icon.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cats_icon.gif
deleted file mode 100644
index db70d7d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cats_icon.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cbutton.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cbutton.gif
deleted file mode 100644
index 83b8761..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cbutton.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle-s.jpg
deleted file mode 100644
index 84e4e89..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle.jpg
deleted file mode 100644
index 5830e57..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/chantelle.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie-s.jpg
deleted file mode 100644
index bb91e94..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie.jpg
deleted file mode 100644
index 9e8d17d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/charlie.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/check_all.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/check_all.gif
deleted file mode 100644
index 3c517f3..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/check_all.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-med.jpg
deleted file mode 100644
index 575a854..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-thumb.jpg
deleted file mode 100644
index 9c2dc57..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/cuttlefish-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog1.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog1.gif
deleted file mode 100644
index 92e71b5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog1.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog2.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog2.gif
deleted file mode 100644
index e581980..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog2.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog3.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog3.gif
deleted file mode 100644
index 9baa503..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog3.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog4.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog4.gif
deleted file mode 100644
index 9124427..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog4.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog5.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog5.gif
deleted file mode 100644
index 3f1690e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog5.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog6.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog6.gif
deleted file mode 100644
index 2bf1380..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dog6.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dogs_icon.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dogs_icon.gif
deleted file mode 100644
index b13e5b9..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dogs_icon.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-med.jpg
deleted file mode 100644
index ff83a16..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-thumb.jpg
deleted file mode 100644
index 814dab1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/dragon-iron-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-med.jpg
deleted file mode 100644
index 2623f3c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-thumb.jpg
deleted file mode 100644
index ccf10a2..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eagle-stone-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-med.jpg
deleted file mode 100644
index 7a7a59e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-thumb.jpg
deleted file mode 100644
index 1f65136..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/eclectus-female-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie-s.jpg
deleted file mode 100644
index 4709e19..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie.jpg
deleted file mode 100644
index 76a7ff1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/elkie.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith-s.jpg
deleted file mode 100644
index 13194bd..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith.jpg
deleted file mode 100644
index cd8ad6e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/faith.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish2.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish2.gif
deleted file mode 100644
index 4d9916c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish2.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish3.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish3.gif
deleted file mode 100644
index 258489d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish3.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish4.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish4.gif
deleted file mode 100644
index d3e39e1..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish4.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish_icon.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish_icon.gif
deleted file mode 100644
index 730c813..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/fish_icon.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake-thumb.jpg
deleted file mode 100644
index cbe5030..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake.jpg
deleted file mode 100644
index 11954df..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/florida-king-snake.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/frog1.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/frog1.gif
deleted file mode 100644
index 4bf637f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/frog1.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano-s.jpg
deleted file mode 100644
index 097b144..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano.jpg
deleted file mode 100644
index ec5d64b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/gaetano.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-med.jpg
deleted file mode 100644
index 31bb43c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-thumb.jpg
deleted file mode 100644
index 70cdc2a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/galah-parrot-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-med.jpg
deleted file mode 100644
index a6646c7..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-thumb.jpg
deleted file mode 100644
index 262659a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/glassfish-colored-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig-thumb.jpg
deleted file mode 100644
index ea0c069..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig.jpg
deleted file mode 100644
index 828bba2..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/guinea-pig.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony-s.jpg
deleted file mode 100644
index 5b28bd0..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony.jpg
deleted file mode 100644
index 3c4d322..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harmony.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison-s.jpg
deleted file mode 100644
index c7c1486..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison.jpg
deleted file mode 100644
index 6003c8c..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/harrison.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-med.jpg
deleted file mode 100644
index a538759..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-thumb.jpg
deleted file mode 100644
index 2369c90..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hawaiian-lizard-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey-s.jpg
deleted file mode 100644
index 13c3f9b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey.jpg
deleted file mode 100644
index 61d877b..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/honey.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter-s.jpg
deleted file mode 100644
index 4303498..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter.jpg
deleted file mode 100644
index 37ebbe9..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/hunter.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb-g.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb-g.jpg
deleted file mode 100644
index a42ddb4..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb-g.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb.jpg
deleted file mode 100644
index 571475a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/index-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/indicator-black.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/indicator-black.gif
deleted file mode 100644
index 6da716a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/indicator-black.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ja_flag.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ja_flag.gif
deleted file mode 100644
index 31d0ada..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/ja_flag.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack-s.jpg
deleted file mode 100644
index d4144da..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack.jpg
deleted file mode 100644
index fe37700..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/jack.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen-s.jpg
deleted file mode 100644
index d83d3f9..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen.jpg
deleted file mode 100644
index ba460be..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/katzen.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-med.jpg
deleted file mode 100644
index 7afa021..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-thumb.jpg
deleted file mode 100644
index f7fa2b2..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/koi-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-med.jpg
deleted file mode 100644
index 8c06c3d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-thumb.jpg
deleted file mode 100644
index 84e82f5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/kookaburra-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady-s.jpg
deleted file mode 100644
index 72a724f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady.jpg
deleted file mode 100644
index ae9054e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lady.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left.gif
deleted file mode 100644
index 46b3630..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left_2.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left_2.gif
deleted file mode 100644
index f50cbed..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/left_2.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb.jpg
deleted file mode 100644
index 620c826..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb2.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb2.jpg
deleted file mode 100644
index 2a52e80..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko-thumb2.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko.jpg
deleted file mode 100644
index 7b77428..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko2.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko2.jpg
deleted file mode 100644
index b3748ae..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/leopard-gecko2.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard1.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard1.gif
deleted file mode 100644
index 665c4d6..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard1.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard2.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard2.gif
deleted file mode 100644
index 2e59d89..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard2.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard3.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard3.gif
deleted file mode 100644
index 6dca58f..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lizard3.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-med.jpg
deleted file mode 100644
index cef3163..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-thumb.jpg
deleted file mode 100644
index 7e97d51..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/lovebird-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw-thumb.jpg
deleted file mode 100644
index a95ff80..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw.jpg
deleted file mode 100644
index b7ae026..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/macaw.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie-s.jpg
deleted file mode 100644
index 7acf48e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie.jpg
deleted file mode 100644
index 140a325..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maggie.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna-s.jpg
deleted file mode 100644
index 4b96d8d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna.jpg
deleted file mode 100644
index 5e3b381..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/marianna.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario-s.jpg
deleted file mode 100644
index f2f1848..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario.jpg
deleted file mode 100644
index a68cd9e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mario.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maximize.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maximize.gif
deleted file mode 100644
index da05f30..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/maximize.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula-thumb.jpg
deleted file mode 100644
index 35387ca..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula.jpg
deleted file mode 100644
index 7365af9..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mexican-redkneed-tarantula.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi-s.jpg
deleted file mode 100644
index 0e6a1a5..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi.jpg
deleted file mode 100644
index 950c84e..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/mimi.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/minimize.gif b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/minimize.gif
deleted file mode 100644
index 8408264..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/minimize.gif and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique-s.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique-s.jpg
deleted file mode 100644
index dea6b6d..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique-s.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique.jpg
deleted file mode 100644
index 0f0ac10..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/monique.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-med.jpg
deleted file mode 100644
index 3c7618a..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-thumb.jpg
deleted file mode 100644
index e765076..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/moon-jelly-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-med.jpg
deleted file mode 100644
index 7c7d897..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-thumb.jpg
deleted file mode 100644
index 4cdb8bb..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-red-thumb.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-med.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-med.jpg
deleted file mode 100644
index f38af83..0000000
Binary files a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-med.jpg and /dev/null differ
diff --git a/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-white-thumb.jpg b/etc/samples/sample-bundle/src/main/petstore/server/default/deploy/petstore.ear/petstore.war/images/octopus-whit