[jbosstools-dev] Fwd: [jbosstools-commits] JBoss Tools SVN: r4997 - in trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui: internal/project/facet and 1 other directory.
Max Rydahl Andersen
max.andersen at redhat.com
Wed Nov 21 10:30:44 EST 2007
On Wed, 21 Nov 2007 16:16:55 +0100, Denis Golovin <dgolovin at exadel.com>
wrote:
> Max,
>
> It is last one. Just need to make validation that selected runtime
> supports ear/ejb because wizard does it only for Seam Dynamic web
> project and there are no ejb and ear facets on facets selection page.
> Validation checks possibility of creating Seam project in EAR deployment
> configuration. It can be removed but then for example after creating
> Seam Web Project with Tomcat Runtime in EAR configuration two errors
> appear on Problems view that Tomcat runtime doesn't support EJB and EAR
> facets.
ok - so we check it only in case of the EAR deployment scenario, right ?
if tomcat supports jsf and web 2.5 then WAR should work ...
/max
>
> Denis.
>
> Max Rydahl Andersen wrote:
>> Denis,
>>
>> It's great we now don't fixate the facet for our jboss runtime, but why
>> do we have to do those additional validations ?
>> Isn't these done automatically by the facet framework ? (e.g. I would
>> expect the validations agaisnt jst.jsf, jst.web and versions are still
>> performed as normally by the facet framework)
>>
>> Or is it simply for pre-validating the facets needed for the possible
>> ejb/ear projects?
>>
>> /max
>>
>> ------- Forwarded message -------
>> From: jbosstools-commits at lists.jboss.org
>> To: jbosstools-commits at lists.jboss.org
>> Cc:
>> Subject: [jbosstools-commits] JBoss Tools SVN: r4997 - in
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui:
>> internal/project/facet and 1 other directory.
>> Date: Wed, 21 Nov 2007 03:40:40 +0100
>>
>> Author: dgolovin
>> Date: 2007-11-20 21:40:40 -0500 (Tue, 20 Nov 2007)
>> New Revision: 4997
>>
>> Modified:
>>
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java
>>
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/internal/project/facet/SeamInstallWizardPage.java
>>
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties
>> Log:
>> http://jira.jboss.org/jira/browse/JBIDE-1320
>>
>> lock to JBoss AS runtime is removed from plugin.xml,
>> werification for selected Deployment type is added. If selected runtime
>> have not supported EJB 3.0 and EAR 5.0 modules errori showed on seam
>> facet wizard page title.
>>
>> It was verified on JBoss AS and Tomcat servers
>>
>> Modified:
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java
>> ===================================================================
>> ---
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java
>> 2007-11-21 01:01:12 UTC (rev 4996)
>> +++
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/SeamUIMessages.java
>> 2007-11-21 02:40:40 UTC (rev 4997)
>> @@ -115,6 +115,8 @@
>>
>> public static String SEAM_INSTALL_WIZARD_PAGE_ADD;
>>
>> + public static String
>> SEAM_INSTALL_WIZARD_PAGE_CANNOT_USE_SELECTED_DEPLOYMENT6;
>> +
>> public static String SEAM_INSTALL_WIZARD_PAGE_CODE_GENERATION;
>>
>> public static String
>> SEAM_INSTALL_WIZARD_PAGE_CONFIGURE_SEAM_FACET_SETTINGS;
>>
>> Modified:
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/internal/project/facet/SeamInstallWizardPage.java
>> ===================================================================
>> ---
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/internal/project/facet/SeamInstallWizardPage.java
>> 2007-11-21 01:01:12 UTC (rev 4996)
>> +++
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/internal/project/facet/SeamInstallWizardPage.java
>> 2007-11-21 02:40:40 UTC (rev 4997)
>> @@ -33,6 +33,7 @@
>> import org.eclipse.jface.wizard.Wizard;
>> import org.eclipse.jface.wizard.WizardDialog;
>> import
>> org.eclipse.jst.j2ee.project.facet.IJ2EEModuleFacetInstallDataModelProperties;
>> +import org.eclipse.osgi.util.NLS;
>> import org.eclipse.swt.SWT;
>> import org.eclipse.swt.layout.GridData;
>> import org.eclipse.swt.layout.GridLayout;
>> @@ -41,10 +42,16 @@
>> import org.eclipse.swt.widgets.Group;
>> import org.eclipse.ui.internal.dialogs.PropertyDialog;
>> import
>> org.eclipse.wst.common.componentcore.datamodel.properties.IFacetDataModelProperties;
>> +import
>> org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
>> import org.eclipse.wst.common.frameworks.datamodel.DataModelEvent;
>> import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
>> import org.eclipse.wst.common.frameworks.datamodel.IDataModelListener;
>> import
>> org.eclipse.wst.common.frameworks.internal.operations.ProjectCreationDataModelProviderNew;
>> +import org.eclipse.wst.common.project.facet.core.IProjectFacet;
>> +import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
>> +import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
>> +import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
>> +import
>> org.eclipse.wst.common.project.facet.core.runtime.RuntimeManager;
>> import org.eclipse.wst.common.project.facet.ui.AbstractFacetWizardPage;
>> import org.eclipse.wst.common.project.facet.ui.IFacetWizardPage;
>> import
>> org.eclipse.wst.web.ui.internal.wizards.NewProjectDataModelFacetWizard;
>> @@ -382,6 +389,11 @@
>> IFacetDataModelProperties.FACET_PROJECT_NAME,
>> new ProjectNamesDuplicationValidator(
>>
>> IFacetDataModelProperties.FACET_PROJECT_NAME));
>> + validatorDelegate.addValidatorForProperty(
>> + ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS,
>> + new DeploymentTypeValidator(
>> +
>> ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS,
>> +
>> ((NewProjectDataModelFacetWizard)getWizard()).getDataModel()));
>> }
>>
>> jBossHibernateDbTypeEditor
>> @@ -541,7 +553,7 @@
>> if (visible) {
>> ITaggedFieldEditor runtimesField =
>> (ITaggedFieldEditor)((CompositeEditor)jBossSeamHomeEditor).getEditors().get(1);
>> Object oldValue = runtimesField.getValue();
>> - Object newValue = "";
>> + Object newValue = ""; //$NON-NLS-1$
>> List<String> runtimes =
>> getRuntimeNames(model.getProperty(IFacetDataModelProperties.FACET_VERSION_STR).toString());
>> if(oldValue==null || !runtimes.contains(oldValue)) {
>> Object defaultRnt = getSeamRuntimeDefaultValue();
>> @@ -612,12 +624,10 @@
>> */
>> public Map<String, String> validate(Object value, Object
>> context) {
>> final String projectName = (String)value;
>> -
>> - IDataModel model = (IDataModel)context;
>> final String deployAs = model.getStringProperty(
>> ISeamFacetDataModelProperties.JBOSS_AS_DEPLOY_AS);
>>
>> - final String testProjectName = projectName + "-test";
>> + final String testProjectName = projectName + "-test";
>> //$NON-NLS-1$
>> IStatus status =
>> ProjectCreationDataModelProviderNew.validateName(testProjectName);
>> if (!status.isOK())
>> return
>> ValidatorFactory.createErrormessage(propertyName,
>> @@ -626,7 +636,7 @@
>>
>> SeamUIMessages.VALIDATOR_FACTORY_PROJECT_ALREADY_EXISTS);
>>
>> if
>> (ISeamFacetDataModelProperties.DEPLOY_AS_EAR.equals(deployAs)) {
>> - final String earProjectName = projectName + "-ear";
>> + final String earProjectName = projectName + "-ear";
>> //$NON-NLS-1$
>> status =
>> ProjectCreationDataModelProviderNew.validateName(earProjectName);
>> if (!status.isOK())
>> return
>> ValidatorFactory.createErrormessage(propertyName,
>> @@ -634,7 +644,7 @@
>> earProjectName +
>>
>> SeamUIMessages.VALIDATOR_FACTORY_PROJECT_ALREADY_EXISTS);
>>
>> - final String ejbProjectName = projectName + "-ejb";
>> + final String ejbProjectName = projectName + "-ejb";
>> //$NON-NLS-1$
>> status =
>> ProjectCreationDataModelProviderNew.validateName(ejbProjectName);
>> if (!status.isOK())
>> return
>> ValidatorFactory.createErrormessage(propertyName,
>> @@ -646,6 +656,46 @@
>> }
>> }
>>
>> + static class DeploymentTypeValidator implements IValidator {
>> + + String propertyName;
>> + + IDataModel model;
>> + + static final IProjectFacet EJB_FACET =
>> ProjectFacetsManager.getProjectFacet(IModuleConstants.JST_EJB_MODULE);
>> + + static final IProjectFacetVersion EJB_30 =
>> EJB_FACET.getVersion("3.0"); //$NON-NLS-1$
>> +
>> + static final IProjectFacet EAR_FACET =
>> ProjectFacetsManager.getProjectFacet(IModuleConstants.JST_EAR_MODULE);
>> + + static final IProjectFacetVersion EAR_50 =
>> EAR_FACET.getVersion("5.0"); //$NON-NLS-1$
>> +
>> + /**
>> + */
>> + public DeploymentTypeValidator (String propertyName,
>> IDataModel model) {
>> + this.propertyName = propertyName;
>> + this.model = model;
>> + }
>> +
>> + /**
>> + * @see IValidator#validate(Object, Object)
>> + */
>> + public Map<String, String> validate(Object value, Object
>> context) {
>> + + final String deploymentType = value.toString();
>> +
>> if(!ISeamFacetDataModelProperties.DEPLOY_AS_WAR.equals(deploymentType))
>> {
>> + String runtimeName =
>> model.getProperty(ISeamFacetDataModelProperties.JBOSS_AS_TARGET_RUNTIME).toString();
>> + IRuntime rt = RuntimeManager.getRuntime(runtimeName);
>> + if(!rt.supports(EJB_30) || !rt.supports(EAR_50)) {
>> + return ValidatorFactory.createErrormessage(
>> + propertyName,
>> +
>> NLS.bind(SeamUIMessages.SEAM_INSTALL_WIZARD_PAGE_CANNOT_USE_SELECTED_DEPLOYMENT6
>> , new String[]{deploymentType.toUpperCase(),runtimeName}));
>> + }
>> + }
>> + return ValidatorFactory.NO_ERRORS;
>> + }
>> + } + public class NewSeamRuntimeAction extends
>>
>> ButtonFieldEditor.ButtonPressedAction {
>> /**
>>
>> Modified:
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties
>> ===================================================================
>> ---
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties
>> 2007-11-21 01:01:12 UTC (rev 4996)
>> +++
>> trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/messages.properties
>> 2007-11-21 02:40:40 UTC (rev 4997)
>> @@ -8,6 +8,7 @@
>> GENERATE_SEAM_ENTITIES_WIZARD_REVERSE_ENGINEER_LABEL = Reverse
>> engineer from database
>> GENERATE_SEAM_ENTITIES_WIZARD_EXISTING_ENTITIES_LABEL = Use existing
>> entities
>> SEAM_INSTALL_WIZARD_PAGE_CONFIGURE_SEAM_FACET_SETTINGS=Configure Seam
>> Facet Settings
>> +SEAM_INSTALL_WIZARD_PAGE_CANNOT_USE_SELECTED_DEPLOYMENT6=''{0}''
>> deployment cannot be used, because selected Server Runtime ''{1}''
>> doesn't support EJB 3.0 and EAR 5.0 modules
>> SEAM_PROJECT_WIZARD_PAGE1_FILE_NAME_MUST_BE_SPECIFIED=File name must
>> be specified
>> SEAM_PROJECT_SELECTION_DIALOG_SELECT_SEAM_WEB_PROJECT=Select Seam Web
>> Project
>> SEAM_PROJECT_WIZARD_CREATE_STANDALONE_SEAM_WEB_PROJECT=Create
>> standalone Seam Web Project
>>
>> _______________________________________________
>> jbosstools-commits mailing list
>> jbosstools-commits at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/jbosstools-commits
>>
>>
>>
>
--
--
Max Rydahl Andersen
callto://max.rydahl.andersen
Hibernate
max at hibernate.org
http://hibernate.org
JBoss a division of Red Hat
max.andersen at jboss.com
More information about the jbosstools-dev
mailing list