JBoss Tools SVN: r8533 - in trunk/seam/plugins/org.jboss.tools.seam.core: src/org/jboss/tools/seam/internal/core/project/facet and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2008-06-04 07:16:48 -0400 (Wed, 04 Jun 2008)
New Revision: 8533
Modified:
trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/Seam2FacetInstallDelegate.java
Log:
JBIDE-2292 Seam facet doesn't use the WTP API
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF 2008-06-04 10:11:52 UTC (rev 8532)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/META-INF/MANIFEST.MF 2008-06-04 11:16:48 UTC (rev 8533)
@@ -45,7 +45,8 @@
org.eclipse.ui.editors,
org.eclipse.wst.sse.ui,
org.eclipse.jst.jsf.common,
- org.eclipse.emf.ecore
+ org.eclipse.emf.ecore,
+ org.eclipse.jst.j2ee.core
Provide-Package: org.jboss.tools.seam.core,
org.jboss.tools.seam.internal.core,
org.jboss.tools.seam.internal.core.scanner,
Modified: trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/Seam2FacetInstallDelegate.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/Seam2FacetInstallDelegate.java 2008-06-04 10:11:52 UTC (rev 8532)
+++ trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/project/facet/Seam2FacetInstallDelegate.java 2008-06-04 11:16:48 UTC (rev 8533)
@@ -15,6 +15,8 @@
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
import java.util.Properties;
import java.util.Set;
@@ -34,7 +36,24 @@
import org.eclipse.core.runtime.OperationCanceledException;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.preferences.IScopeContext;
+import org.eclipse.jdt.internal.ui.jarpackagerfat.FatJarAntExporter;
import org.eclipse.jst.common.project.facet.core.ClasspathHelper;
+import org.eclipse.jst.j2ee.model.IModelProvider;
+import org.eclipse.jst.j2ee.model.ModelProviderManager;
+import org.eclipse.jst.javaee.core.DisplayName;
+import org.eclipse.jst.javaee.core.JavaeeFactory;
+import org.eclipse.jst.javaee.core.Listener;
+import org.eclipse.jst.javaee.core.ParamValue;
+import org.eclipse.jst.javaee.core.UrlPatternType;
+import org.eclipse.jst.javaee.web.AuthConstraint;
+import org.eclipse.jst.javaee.web.Filter;
+import org.eclipse.jst.javaee.web.FilterMapping;
+import org.eclipse.jst.javaee.web.SecurityConstraint;
+import org.eclipse.jst.javaee.web.Servlet;
+import org.eclipse.jst.javaee.web.ServletMapping;
+import org.eclipse.jst.javaee.web.WebApp;
+import org.eclipse.jst.javaee.web.WebFactory;
+import org.eclipse.jst.javaee.web.WebResourceCollection;
import org.eclipse.wst.common.componentcore.ComponentCore;
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
@@ -54,6 +73,23 @@
// TODO: why not just *one* global filter set to avoid any missing names ? (assert for it in our unittests!
public class Seam2FacetInstallDelegate extends SeamFacetAbstractInstallDelegate{
+ public static String ORG_RICHFACES_SKIN = "org.richfaces.SKIN"; //$NON-NLS-1$
+ public static String ORG_RICHFACES_SKIN_VALUE = "@skin@"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMLISTENER = "org.jboss.seam.servlet.SeamListener"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMFILTER = "org.jboss.seam.servlet.SeamFilter"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMFILTER_NAME = "Seam Filter"; //$NON-NLS-1$
+ //public static String ORG_JBOSS_SEAM_SERVLET_SEAMFILTER_MAPPING = "Seam Filter"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMFILTER_MAPPING_VALUE = "/*"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET = "org.jboss.seam.servlet.SeamResourceServlet"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET_NAME = "Seam Resource Servlet"; //$NON-NLS-1$
+ public static String ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET_VALUE = "/seam/resource/*"; //$NON-NLS-1$
+ public static String FACELETS_DEVELOPMENT = "facelets.DEVELOPMENT"; //$NON-NLS-1$
+ public static String JAVAX_FACES_DEFAULT_SUFFIX = "javax.faces.DEFAULT_SUFFIX"; //$NON-NLS-1$
+ public static String JAVAX_FACES_DEFAULT_SUFFIX_VALUE = ".xhtml"; //$NON-NLS-1$
+ public static String RESTRICT_RAW_XHTML = "Restrict raw XHTML Documents"; //$NON-NLS-1$
+ public static String XHTML = "XHTML"; //$NON-NLS-1$
+ public static String WEB_RESOURCE_COLLECTION_PATTERN = "*.xhtml"; //$NON-NLS-1$
+
public static String DEV_WAR_PROFILE = "dev-war"; //$NON-NLS-1$
public static String DEV_EAR_PROFILE = "dev"; //$NON-NLS-1$
public static String TEST_WAR_PROFILE = "test-war"; //$NON-NLS-1$
@@ -156,7 +192,7 @@
public static AntCopyUtils.FileSet JBOOS_WAR_WEBINF_SET = new AntCopyUtils.FileSet()
.include("WEB-INF") //$NON-NLS-1$
- .include("WEB-INF/web\\.xml") //$NON-NLS-1$
+ //.include("WEB-INF/web\\.xml") //$NON-NLS-1$
.include("WEB-INF/pages\\.xml") //$NON-NLS-1$
.include("WEB-INF/jboss-web\\.xml") //$NON-NLS-1$
.include("WEB-INF/faces-config\\.xml") //$NON-NLS-1$
@@ -259,6 +295,8 @@
// *******************************************************************
AntCopyUtils.FileSet webInfSet = new AntCopyUtils.FileSet(JBOOS_WAR_WEBINF_SET).dir(seamGenResFolder);
+ configureWebXml(project);
+
AntCopyUtils.copyFileToFile(
componentsFile,
new File(webInfFolder,"components.xml"), //$NON-NLS-1$
@@ -511,6 +549,252 @@
toggleHibernateOnProject(testProjectToBeImported, consoleName);
}
+ private void configureWebXml(final IProject project) {
+ IModelProvider modelProvider = ModelProviderManager
+ .getModelProvider(project);
+ Object modelObject = modelProvider.getModelObject();
+ if (!(modelObject instanceof WebApp)) {
+ // TODO log
+ return;
+ }
+ IPath modelPath = new Path("WEB-INF").append("web.xml"); //$NON-NLS-1$ //$NON-NLS-2$
+ boolean exists = project.getProjectRelativePath().append(modelPath)
+ .toFile().exists();
+ if (!exists) {
+ modelPath = IModelProvider.FORCESAVE;
+ }
+ modelProvider.modify(new Runnable() {
+
+ public void run() {
+ IModelProvider modelProvider = ModelProviderManager
+ .getModelProvider(project);
+ Object modelObject = modelProvider.getModelObject();
+ if (!(modelObject instanceof WebApp)) {
+ // TODO log
+ return;
+ }
+ WebApp webApp = (WebApp) modelObject;
+ // Ajax4jsf
+ createOrUpdateContextParam(webApp, ORG_RICHFACES_SKIN,
+ ORG_RICHFACES_SKIN_VALUE);
+ // Seam
+ createOrUpdateListener(webApp,
+ ORG_JBOSS_SEAM_SERVLET_SEAMLISTENER);
+ createOrUpdateFilter(webApp,
+ ORG_JBOSS_SEAM_SERVLET_SEAMFILTER_NAME,
+ ORG_JBOSS_SEAM_SERVLET_SEAMFILTER);
+ createOrUpdateFilterMapping(webApp,
+ ORG_JBOSS_SEAM_SERVLET_SEAMFILTER_NAME,
+ ORG_JBOSS_SEAM_SERVLET_SEAMFILTER_MAPPING_VALUE);
+ createOrUpdateServlet(webApp,
+ ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET,
+ ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET_NAME);
+ createOrUpdateServletMapping(webApp,
+ ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET_NAME,
+ ORG_JBOSS_SEAM_SERVLET_SEAMRESOURCESERVLET_VALUE);
+ // Facelets development mode (disable in production)
+ createOrUpdateContextParam(webApp, FACELETS_DEVELOPMENT, "true");
+ // JSF
+ createOrUpdateContextParam(webApp, JAVAX_FACES_DEFAULT_SUFFIX,
+ JAVAX_FACES_DEFAULT_SUFFIX_VALUE);
+ // other JSF artifacts have been configured by the JSF facet
+
+ // Security
+ addSecurityConstraint(webApp);
+ }
+
+ }, modelPath);
+
+ }
+
+ private void addSecurityConstraint(WebApp webApp) {
+
+ SecurityConstraint securityConstraint = WebFactory.eINSTANCE.createSecurityConstraint();
+ DisplayName displayName = JavaeeFactory.eINSTANCE.createDisplayName();
+ displayName.setValue(RESTRICT_RAW_XHTML);
+ securityConstraint.getDisplayNames().add(displayName);
+
+ WebResourceCollection webResourceCollection = WebFactory.eINSTANCE.createWebResourceCollection();
+ webResourceCollection.setWebResourceName(XHTML);
+ UrlPatternType urlPattern = JavaeeFactory.eINSTANCE.createUrlPatternType();
+ urlPattern.setValue(WEB_RESOURCE_COLLECTION_PATTERN);
+ webResourceCollection.getUrlPatterns().add(urlPattern);
+
+ AuthConstraint authConstraint = WebFactory.eINSTANCE.createAuthConstraint();
+ securityConstraint.setAuthConstraint(authConstraint);
+
+ securityConstraint.getWebResourceCollections().add(webResourceCollection);
+ webApp.getSecurityConstraints().add(securityConstraint);
+ }
+
+ private void createOrUpdateServletMapping(WebApp webApp, String name, String value) {
+ if (name == null || value == null)
+ return;
+
+ List servletMappings = webApp.getServletMappings();
+ boolean added = false;
+ for (Iterator iterator = servletMappings.iterator(); iterator.hasNext();) {
+ ServletMapping servletMapping = (ServletMapping) iterator.next();
+ if (servletMapping != null && name.equals(servletMapping.getServletName())) {
+ added = true;
+ // FIXME
+ }
+ }
+ if (!added) {
+ ServletMapping mapping = WebFactory.eINSTANCE.createServletMapping();
+ Servlet servlet = findServletByName(webApp, name);
+ if (servlet != null) {
+ mapping.setServletName(servlet.getServletName());
+ UrlPatternType urlPattern = JavaeeFactory.eINSTANCE.createUrlPatternType();
+ urlPattern.setValue(value);
+ mapping.getUrlPatterns().add(urlPattern);
+ webApp.getServletMappings().add(mapping);
+ }
+ }
+ }
+
+ private Servlet findServletByName(WebApp webApp, String name) {
+ Iterator it = webApp.getServlets().iterator();
+ while (it.hasNext()) {
+ Servlet servlet = (Servlet) it.next();
+ if (servlet.getServletName() != null
+ && servlet.getServletName().trim().equals(name)) {
+ return servlet;
+ }
+ }
+ return null;
+ }
+
+ private void createOrUpdateServlet(WebApp webApp, String servletClass, String servletName) {
+ if (servletClass == null || servletName == null)
+ return;
+
+ List servlets = webApp.getServlets();
+ boolean added = false;
+ for (Iterator iterator = servlets.iterator(); iterator.hasNext();) {
+ Servlet servlet = (Servlet) iterator.next();
+ if (servletName.equals(servlet.getServletName())) {
+ servlet.setServletName(servletName);
+ added=true;
+ break;
+ }
+ }
+ if (!added) {
+ Servlet servlet = WebFactory.eINSTANCE.createServlet();
+ servlet.setServletName(servletName);
+ servlet.setServletClass(servletClass);
+ webApp.getServlets().add(servlet);
+ }
+ }
+
+ private void createOrUpdateFilterMapping(WebApp webApp, String mapping, String value) {
+ if (mapping == null || value == null)
+ return;
+ List filterMappings = webApp.getFilterMappings();
+ boolean added = false;
+ for (Iterator iterator = filterMappings.iterator(); iterator.hasNext();) {
+ FilterMapping filterMapping = (FilterMapping) iterator.next();
+ String filterName = filterMapping.getFilterName();
+ List filters = webApp.getFilters();
+ for (Iterator iterator2 = filters.iterator(); iterator2.hasNext();) {
+ Filter filter = (Filter) iterator2.next();
+ if (filter != null && filterName != null && filterName.equals(filter.getFilterName())) {
+ // FIXME
+ added = true;
+ break;
+ }
+ }
+ if (added)
+ break;
+ }
+ if (!added) {
+ FilterMapping filterMapping = WebFactory.eINSTANCE.createFilterMapping();
+ Filter filter = (Filter) getFilterByName(webApp, mapping);
+ if (filter != null) {
+ filterMapping.setFilterName(filter.getFilterName());
+ UrlPatternType urlPattern = JavaeeFactory.eINSTANCE.createUrlPatternType();
+ urlPattern.setValue(value);
+ filterMapping.getUrlPatterns().add(urlPattern);
+
+ webApp.getFilterMappings().add(filterMapping);
+ }
+ }
+ }
+
+ private Object getFilterByName(WebApp webApp, String name) {
+ if (webApp == null || name == null)
+ return null;
+ List filters = webApp.getFilters();
+ for (Iterator iterator = filters.iterator(); iterator.hasNext();) {
+ Filter filter = (Filter) iterator.next();
+ if (filter != null && name.equals(filter.getFilterName()))
+ return filter;
+ }
+
+ return null;
+ }
+ private void createOrUpdateFilter(WebApp webApp, String name, String clazz) {
+ if (name == null || clazz == null)
+ return;
+ List filters = webApp.getFilters();
+ boolean added = false;
+ for (Iterator iterator = filters.iterator(); iterator.hasNext();) {
+ Filter filter = (Filter) iterator.next();
+ if (filter != null && name.endsWith(filter.getFilterName())) {
+ filter.setFilterName(name);
+ filter.setFilterClass(clazz);
+ added = true;
+ break;
+ }
+ }
+ if (!added) {
+ Filter filter = WebFactory.eINSTANCE.createFilter();
+ filter.setFilterName(name);
+ filter.setFilterClass(clazz);
+ webApp.getFilters().add(filter);
+ }
+ }
+
+ private void createOrUpdateListener(WebApp webApp, String name) {
+ if (name == null)
+ return;
+ List listeners = webApp.getListeners();
+ boolean added = false;
+ for (Iterator iterator = listeners.iterator(); iterator.hasNext();) {
+ Listener listener = (Listener) iterator.next();
+ if (listener != null && name.equals(listener.getListenerClass())) {
+ listener.setListenerClass(name);
+ added = true;
+ }
+ }
+ if (!added) {
+ Listener listener = JavaeeFactory.eINSTANCE.createListener();
+ listener.setListenerClass(name);
+ webApp.getListeners().add(listener);
+ }
+ }
+
+ private void createOrUpdateContextParam(WebApp webApp, String name,String value) {
+ if (name == null || value == null)
+ return;
+ List paramValues = webApp.getContextParams();
+ boolean added = false;
+ for (Iterator iterator = paramValues.iterator(); iterator.hasNext();) {
+ ParamValue paramValue = (ParamValue) iterator.next();
+ if (paramValue != null && name.equals(paramValue.getParamName())) {
+ paramValue.setParamValue(value);
+ added = true;
+ break;
+ }
+ }
+ if (!added) {
+ ParamValue paramValue = JavaeeFactory.eINSTANCE.createParamValue();
+ paramValue.setParamName(name);
+ paramValue.setParamValue(value);
+ webApp.getContextParams().add(paramValue);
+ }
+ }
+
public static boolean isWarConfiguration(IDataModel model) {
return "war".equals(model.getProperty(ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS)); //$NON-NLS-1$
}
15 years, 11 months
JBoss Tools SVN: r8531 - trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers.
by jbosstools-commits@lists.jboss.org
Author: scabanovich
Date: 2008-06-04 05:34:00 -0400 (Wed, 04 Jun 2008)
New Revision: 8531
Modified:
trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/AddViewSupport.java
Log:
JBIDE-2281
Modified: trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/AddViewSupport.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/AddViewSupport.java 2008-06-04 05:10:56 UTC (rev 8530)
+++ trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/AddViewSupport.java 2008-06-04 09:34:00 UTC (rev 8531)
@@ -234,7 +234,7 @@
return isCorrectPath(path) && !fileExists(path);
}
- static String FORBIDDEN_INDICES = "\"\n\t*\\:<>?|";
+ static String FORBIDDEN_INDICES = "\"\n\t\\:<>?|"; //* is allowed anywhere
static boolean isCorrectPath(String path) {
if(path == null || path.equals("/") || path.indexOf("//") >= 0) return false;
15 years, 11 months
JBoss Tools SVN: r8530 - in trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core: messages and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: Grid.Qian
Date: 2008-06-04 01:10:56 -0400 (Wed, 04 Jun 2008)
New Revision: 8530
Modified:
trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/MergeWebXMLCommand.java
trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties
Log:
JBIDE-2047: when merge web.xml, add support for jee project and j2ee project
Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/MergeWebXMLCommand.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/MergeWebXMLCommand.java 2008-06-04 02:26:52 UTC (rev 8529)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/MergeWebXMLCommand.java 2008-06-04 05:10:56 UTC (rev 8530)
@@ -7,7 +7,7 @@
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
+ ******************************************************************************/
package org.jboss.tools.ws.creation.core.commands;
@@ -50,12 +50,13 @@
throws ExecutionException {
IEnvironment environment = getEnvironment();
IStatus status = null;
- ServletDescriptor[] servletDescriptors = new ServletDescriptor[model.getServiceClasses().size()];
+ ServletDescriptor[] servletDescriptors = new ServletDescriptor[model
+ .getServiceClasses().size()];
List<String> serviceClasses = model.getServiceClasses();
- for(int i = 0; i < serviceClasses.size(); i++){
- servletDescriptors[i] = getAxisServletDescriptor(serviceClasses.get(i));
+ for (int i = 0; i < serviceClasses.size(); i++) {
+ servletDescriptors[i] = getServletDescriptor(serviceClasses.get(i));
}
-
+
status = mergeWebXML(servletDescriptors);
if (status.getSeverity() == Status.ERROR) {
environment.getStatusHandler().reportError(status);
@@ -72,21 +73,64 @@
provider.modify(new Runnable() {
public void run() {
Object object = provider.getModelObject();
- if (object instanceof org.eclipse.jst.javaee.web.WebApp) {
+ if (object instanceof WebApp) {
WebApp webApp = (WebApp) object;
- for(int i = 0; i < servletDescriptors.length; i++){
- addServlet(JBossWSCreationUtils.getProjectByName(model
- .getWebProjectName()), servletDescriptors[i], webApp);
+ for (int i = 0; i < servletDescriptors.length; i++) {
+ addjeeServlet(JBossWSCreationUtils
+ .getProjectByName(model.getWebProjectName()),
+ servletDescriptors[i], webApp);
}
}
+ if (object instanceof org.eclipse.jst.j2ee.webapplication.WebApp) {
+ org.eclipse.jst.j2ee.webapplication.WebApp webApp = (org.eclipse.jst.j2ee.webapplication.WebApp) object;
+ for (int i = 0; i < servletDescriptors.length; i++) {
+ addServlet(JBossWSCreationUtils.getProjectByName(model
+ .getWebProjectName()), servletDescriptors[i],
+ webApp);
+ }
+ }
}
}, null);
return status;
}
- private ServletDescriptor getAxisServletDescriptor(String clsName) {
+ @SuppressWarnings("unchecked")
+ protected void addServlet(IProject projectByName,
+ ServletDescriptor servletDescriptor,
+ org.eclipse.jst.j2ee.webapplication.WebApp webapp) {
+ List theServlets = webapp.getServlets();
+ for (int i = 0; i < theServlets.size(); i++) {
+ Servlet aServlet = (Servlet) theServlets.get(i);
+ if (aServlet.getServletName().equals(servletDescriptor._name)) {
+ return;
+ }
+ }
+ org.eclipse.jst.j2ee.webapplication.WebapplicationFactory factory = org.eclipse.jst.j2ee.webapplication.WebapplicationFactory.eINSTANCE;
+ org.eclipse.jst.j2ee.webapplication.Servlet servlet = factory
+ .createServlet();
+ org.eclipse.jst.j2ee.webapplication.ServletType servletType = factory
+ .createServletType();
+ servlet.setWebType(servletType);
+ servlet.setServletName(servletDescriptor._name);
+ servletType.setClassName(servletDescriptor._className);
+ if (servletDescriptor._displayName != null) {
+ servlet.setDisplayName(servletDescriptor._displayName);
+ }
+ webapp.getServlets().add(servlet);
+ if (servletDescriptor._mappings != null) {
+ org.eclipse.jst.j2ee.webapplication.ServletMapping servletMapping = factory
+ .createServletMapping();
+ servletMapping.setServlet(servlet);
+ servletMapping.setUrlPattern(servletDescriptor._mappings);
+ webapp.getServletMappings().add(servletMapping);
+ }
+
+ }
+
+ private ServletDescriptor getServletDescriptor(String clsName) {
+
ServletDescriptor sd = new ServletDescriptor();
sd._name = JBossWSCreationUtils.classNameFromQualifiedName(clsName);
sd._displayName = sd._name;
@@ -96,7 +140,7 @@
}
@SuppressWarnings("unchecked")
- public void addServlet(IProject webProject,
+ public void addjeeServlet(IProject webProject,
ServletDescriptor servletDescriptor, WebApp webapp) {
List theServlets = webapp.getServlets();
for (int i = 0; i < theServlets.size(); i++) {
Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties 2008-06-04 02:26:52 UTC (rev 8529)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties 2008-06-04 05:10:56 UTC (rev 8530)
@@ -15,7 +15,7 @@
ERROR_NO_ANNOTATION=This class has no required JAXWS Annotation!
WEBSERVICE_ANNOTATION_CHECK=@WebService(
WEBSERVICE_ANNOTATION=@WebService
-ERROR_NO_CLASS= The class '{0}' cannot be loaded via project {1}.Check that the project contains the class, or that the class is loadable according to the Java Build Path of the project.
+ERROR_NO_CLASS= The class {0} cannot be loaded via project {1}.Check that the project contains the class, or that the class is loadable according to the Java Build Path of the project.
ERROR_WS_LOCATION=The JBoss WS Runtime Location is NULL. Please set the location on JBoss WS preferences page.
WEBSERVICEClient_ANNOTATION=@WebServiceClient
CLIENTSAMPLEPACKAGENAME=.clientsample
15 years, 11 months
JBoss Tools SVN: r8529 - trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands.
by jbosstools-commits@lists.jboss.org
Author: Grid.Qian
Date: 2008-06-03 22:26:52 -0400 (Tue, 03 Jun 2008)
New Revision: 8529
Added:
trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/RemoveClientJarsCommand.java
Log:
JBIDE-2236: remove jars command
Added: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/RemoveClientJarsCommand.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/RemoveClientJarsCommand.java (rev 0)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/RemoveClientJarsCommand.java 2008-06-04 02:26:52 UTC (rev 8529)
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+
+package org.jboss.tools.ws.creation.core.commands;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jdt.core.IClasspathContainer;
+import org.eclipse.jdt.core.IClasspathEntry;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
+import org.jboss.tools.ws.core.classpath.JbossWSRuntimeClassPathInitializer.JbossWSRuntimeClasspathContainer;
+import org.jboss.tools.ws.core.messages.JbossWSCoreMessages;
+import org.jboss.tools.ws.core.utils.StatusUtils;
+import org.jboss.tools.ws.creation.core.data.ServiceModel;
+import org.jboss.tools.ws.creation.core.messages.JBossWSCreationCoreMessages;
+import org.jboss.tools.ws.creation.core.utils.JBossWSCreationUtils;
+
+/**
+ * @author Grid Qian
+ *
+ * remove two jars from web service client project's classpath
+ * because can not run client sample if have these two jars
+ */
+public class RemoveClientJarsCommand extends AbstractDataModelOperation{
+
+ private ServiceModel model;
+
+ public RemoveClientJarsCommand(ServiceModel model) {
+ this.model = model;
+ }
+
+ @Override
+ public IStatus execute(IProgressMonitor monitor, IAdaptable info)
+ throws ExecutionException {
+ return executeOverride(monitor);
+ }
+
+ public IStatus executeOverride(IProgressMonitor monitor) {
+ IStatus status = Status.OK_STATUS;
+ IJavaProject project = null;
+ try {
+ project = JBossWSCreationUtils.getJavaProjectByName(model
+ .getWebProjectName());
+ } catch (JavaModelException e) {
+ return StatusUtils.errorStatus(JBossWSCreationCoreMessages.ERROR_CREATECLIENTSAMPLE);
+ }
+ status = removeClassPath(project);
+ return status;
+ }
+
+ private IStatus removeClassPath(IJavaProject project) {
+ IStatus status = Status.OK_STATUS;
+ try {
+ IClasspathEntry[] entries = project.getRawClasspath();
+
+ for(IClasspathEntry entry:entries){
+ IClasspathContainer container = JavaCore.getClasspathContainer(entry.getPath(), project);
+ if(container instanceof JbossWSRuntimeClasspathContainer){
+ ((JbossWSRuntimeClasspathContainer)container).removeEntry("jaxws-rt.jar");
+ ((JbossWSRuntimeClasspathContainer)container).removeEntry("jaxws-tools.jar");
+ }
+ }
+ } catch (JavaModelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ try {
+ project.getRawClasspath();
+ } catch (JavaModelException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return status;
+ }
+
+}
15 years, 11 months
JBoss Tools SVN: r8528 - in trunk/ws/plugins: org.jboss.tools.ws.creation.ui/src/org/jboss/tools/ws/creation/ui/wsrt and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: Grid.Qian
Date: 2008-06-03 22:26:00 -0400 (Tue, 03 Jun 2008)
New Revision: 8528
Modified:
trunk/ws/plugins/org.jboss.tools.ws.core/src/org/jboss/tools/ws/core/classpath/JbossWSRuntimeClassPathInitializer.java
trunk/ws/plugins/org.jboss.tools.ws.creation.ui/src/org/jboss/tools/ws/creation/ui/wsrt/JBossWebServiceClient.java
Log:
JBIDE-2236: remove two jars from classpath for running client
Modified: trunk/ws/plugins/org.jboss.tools.ws.core/src/org/jboss/tools/ws/core/classpath/JbossWSRuntimeClassPathInitializer.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.core/src/org/jboss/tools/ws/core/classpath/JbossWSRuntimeClassPathInitializer.java 2008-06-04 00:09:59 UTC (rev 8527)
+++ trunk/ws/plugins/org.jboss.tools.ws.core/src/org/jboss/tools/ws/core/classpath/JbossWSRuntimeClassPathInitializer.java 2008-06-04 02:26:00 UTC (rev 8528)
@@ -97,6 +97,19 @@
}
return list.toArray(new IClasspathEntry[list.size()]);
}
+ public void removeEntry(String jarName){
+ if(entries == null){
+ return;
+ }
+ IClasspathEntry[] newEntries = new IClasspathEntry[entries.length-1];
+ int i=0;
+ for(IClasspathEntry entry: entries){
+ if(!entry.toString().contains(jarName)){
+ newEntries[i++] = entry;
+ }
+ }
+ entries = newEntries;
+ }
}
Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.ui/src/org/jboss/tools/ws/creation/ui/wsrt/JBossWebServiceClient.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.ui/src/org/jboss/tools/ws/creation/ui/wsrt/JBossWebServiceClient.java 2008-06-04 00:09:59 UTC (rev 8527)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.ui/src/org/jboss/tools/ws/creation/ui/wsrt/JBossWebServiceClient.java 2008-06-04 02:26:00 UTC (rev 8528)
@@ -26,6 +26,7 @@
import org.jboss.tools.ws.creation.core.commands.BindingFilesValidationCommand;
import org.jboss.tools.ws.creation.core.commands.ClientSampleCreationCommand;
import org.jboss.tools.ws.creation.core.commands.InitialClientCommand;
+import org.jboss.tools.ws.creation.core.commands.RemoveClientJarsCommand;
import org.jboss.tools.ws.creation.core.commands.WSDL2JavaCommand;
import org.jboss.tools.ws.creation.core.data.ServiceModel;
@@ -58,6 +59,7 @@
commands.add(new BindingFilesValidationCommand(model));
commands.add(new WSDL2JavaCommand(model));
commands.add(new ClientSampleCreationCommand(model));
+ commands.add(new RemoveClientJarsCommand(model));
return new SimpleCommandFactory(commands);
}
15 years, 11 months
JBoss Tools SVN: r8527 - workspace/dgolovin/releng.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2008-06-03 20:09:59 -0400 (Tue, 03 Jun 2008)
New Revision: 8527
Modified:
workspace/dgolovin/releng/build.properties
Log:
Modified: workspace/dgolovin/releng/build.properties
===================================================================
--- workspace/dgolovin/releng/build.properties 2008-06-04 00:05:21 UTC (rev 8526)
+++ workspace/dgolovin/releng/build.properties 2008-06-04 00:09:59 UTC (rev 8527)
@@ -1,8 +1,8 @@
product.name=JBossTools
-nightly.build.steps=standalone.product,tests,reports
-integration.build.steps=standalone.product,tests,reports
-release.build.steps=standalone.product,bundle.eclipse,tests,reports
+nightly.build.steps=standalone.product,reports
+integration.build.steps=standalone.product,reports
+release.build.steps=standalone.product,bundle.eclipse,reports
splash.path=${build.root}/art/splash.bmp
product.build.root=${build.output.directory}
15 years, 11 months
JBoss Tools SVN: r8526 - workspace/dgolovin/releng.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2008-06-03 20:05:21 -0400 (Tue, 03 Jun 2008)
New Revision: 8526
Added:
workspace/dgolovin/releng/.project
workspace/dgolovin/releng/build.properties
Log:
Added: workspace/dgolovin/releng/.project
===================================================================
--- workspace/dgolovin/releng/.project (rev 0)
+++ workspace/dgolovin/releng/.project 2008-06-04 00:05:21 UTC (rev 8526)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>releng-hudson</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
Property changes on: workspace/dgolovin/releng/.project
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dgolovin/releng/build.properties
===================================================================
--- workspace/dgolovin/releng/build.properties (rev 0)
+++ workspace/dgolovin/releng/build.properties 2008-06-04 00:05:21 UTC (rev 8526)
@@ -0,0 +1,37 @@
+product.name=JBossTools
+
+nightly.build.steps=standalone.product,tests,reports
+integration.build.steps=standalone.product,tests,reports
+release.build.steps=standalone.product,bundle.eclipse,tests,reports
+
+splash.path=${build.root}/art/splash.bmp
+product.build.root=${build.output.directory}
+requirement.build.root=${product.build.root}/requirements
+
+requirement.root=${build.root}/requirements
+builder.build.path=${product.build.root}/eclipse
+builder.root=${build.root}/builders
+builders=richfaces,freemarker,hibernate-tools,struts,core,jbpm,as,seam,esb
+
+eclipse.archive.path=${product.build.root}
+platform.names=win32,linux-gtk,linux-gtk-x86_64,macosx-carbon
+#platform.names=win32,linux-gtk
+buildResults.template=buildResults.html
+
+buildScriptExt=${build.script.ext}
+
+# SSH/SCP properties
+ssh.username=jbds
+ssh.host=download.exadel.com
+scp.basedir=/home/jbds/builds
+
+# JBossLabs / SVN properties
+labs.url=https://cms.labs.jboss.com/prod/forge/portal-content/default/members/jbosside/downloads
+
+# HTTP Download URL
+jbds.download.url=http://download.jboss.org/jbosstools/builds
+
+# Installer repository info
+installer.svn.username=rhdsbuild
+installer.svn.password=l3tm3build
+installer.svn.url=https://svn.jboss.org/repos/testproject/rhds/sandbox/rhds-installer
\ No newline at end of file
Property changes on: workspace/dgolovin/releng/build.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
15 years, 11 months
JBoss Tools SVN: r8524 - tags/jbosstools-2.1.1.GA.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2008-06-03 18:18:24 -0400 (Tue, 03 Jun 2008)
New Revision: 8524
Added:
tags/jbosstools-2.1.1.GA/vpe/
Log:
tagging jbosstools-2.1.1.GA
Copied: tags/jbosstools-2.1.1.GA/vpe (from rev 8523, branches/jbosstools-2.1.x/vpe)
15 years, 11 months
JBoss Tools SVN: r8523 - tags/jbosstools-2.1.1.GA.
by jbosstools-commits@lists.jboss.org
Author: mculpepper(a)jboss.com
Date: 2008-06-03 18:18:21 -0400 (Tue, 03 Jun 2008)
New Revision: 8523
Added:
tags/jbosstools-2.1.1.GA/tests/
Log:
tagging jbosstools-2.1.1.GA
Copied: tags/jbosstools-2.1.1.GA/tests (from rev 8522, branches/jbosstools-2.1.x/tests)
15 years, 11 months