JBoss Tools SVN: r12093 - in trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks: ui/editors and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-11-27 02:27:27 -0500 (Thu, 27 Nov 2008)
New Revision: 12093
Modified:
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/analyzer/JavaBeanAnalyzer.java
trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksGraphicalFormPage.java
Log:
JBIDE-3262
add a link beside by the error message
click the link , a menu will show
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/analyzer/JavaBeanAnalyzer.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/analyzer/JavaBeanAnalyzer.java 2008-11-27 02:28:28 UTC (rev 12092)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/javabean/analyzer/JavaBeanAnalyzer.java 2008-11-27 07:27:27 UTC (rev 12093)
@@ -89,9 +89,9 @@
private AdapterFactoryEditingDomain editingDomain;
private HashMap userdSelectorString = new HashMap();
-
- private HashMap<String,JavaBeanModel> javaBeanModelCatch = new HashMap<String,JavaBeanModel>();
+ private HashMap<String, JavaBeanModel> javaBeanModelCatch = new HashMap<String, JavaBeanModel>();
+
private HashMap<ResourceConfigType, Object> usedResourceConfigMap = new HashMap<ResourceConfigType, Object>();
private HashMap usedBeanIDMap = new HashMap();
@@ -112,12 +112,14 @@
protected boolean resourceConfigIsUsed(ResourceConfigType config) {
return (usedResourceConfigMap.get(config) != null);
}
-
- protected void registeSourceJavaBeanWithResourceConfig(ResourceConfigType config,JavaBeanModel model){
+
+ protected void registeSourceJavaBeanWithResourceConfig(
+ ResourceConfigType config, JavaBeanModel model) {
javaBeanModelCatch.put(config.getSelector(), model);
}
-
- protected JavaBeanModel loadJavaBeanWithResourceConfig(ResourceConfigType config){
+
+ protected JavaBeanModel loadJavaBeanWithResourceConfig(
+ ResourceConfigType config) {
return javaBeanModelCatch.get(config.getSelector());
}
@@ -125,8 +127,6 @@
if (!usedResourceConfigMap.containsValue(config))
usedResourceConfigMap.put(config, new Object());
}
-
-
protected CommandStack createCommandStack() {
return new BasicCommandStack();
@@ -329,7 +329,8 @@
.getReferenceEntityModel();
JavaBeanModel currentbean = (JavaBeanModel) target
.getReferenceEntityModel();
- if (sourcebean.getParent() == rootbean || sourcebean == rootbean) {
+ if (sourcebean.getParent() == rootbean
+ || sourcebean.getParent() == null) {
if (!currentbean.isPrimitive()) {
String currentbeanName = currentbean.getName();
if (currentbeanName.length() > 1) {
@@ -374,6 +375,9 @@
AbstractStructuredDataModel sourceModel) {
JavaBeanModel source = (JavaBeanModel) sourceModel
.getReferenceEntityModel();
+ if (source.getParent() == null) {
+ return source.getBeanClassString();
+ }
if (source.getBeanClass().isArray()) {
return source.getName();
}
@@ -575,7 +579,7 @@
.getBindingListFromResourceConfigType(resourceConfig);
if (bindingList == null)
return;
-
+
setResourceConfigUsed(resourceConfig);
registeSourceJavaBeanWithResourceConfig(resourceConfig, source);
for (Iterator<Object> iterator = bindingList.iterator(); iterator
@@ -627,11 +631,13 @@
}
}
}
-
- protected JavaBeanModel findModelWithResourceConfig(ResourceConfigType config,JavaBeanModel parentModel){
+
+ protected JavaBeanModel findModelWithResourceConfig(
+ ResourceConfigType config, JavaBeanModel parentModel) {
String newSelector = config.getSelector();
- JavaBeanModel model = findTheChildJavaBeanModel(newSelector, parentModel);
- if(model == null){
+ JavaBeanModel model = findTheChildJavaBeanModel(newSelector,
+ parentModel);
+ if (model == null) {
model = loadJavaBeanWithResourceConfig(config);
}
return model;
Modified: trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksGraphicalFormPage.java
===================================================================
--- trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksGraphicalFormPage.java 2008-11-27 02:28:28 UTC (rev 12092)
+++ trunk/smooks/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/ui/editors/SmooksGraphicalFormPage.java 2008-11-27 07:27:27 UTC (rev 12093)
@@ -97,6 +97,7 @@
import org.eclipse.ui.forms.editor.FormPage;
import org.eclipse.ui.forms.events.HyperlinkEvent;
import org.eclipse.ui.forms.events.IHyperlinkListener;
+import org.eclipse.ui.forms.widgets.ExpandableComposite;
import org.eclipse.ui.forms.widgets.FormToolkit;
import org.eclipse.ui.forms.widgets.Hyperlink;
import org.eclipse.ui.forms.widgets.ScrolledForm;
@@ -308,6 +309,9 @@
Composite rootMainControl = form.getBody();
form.setText(Messages
.getString("SmooksGraphicalFormPage.MappingPageFormTitle")); //$NON-NLS-1$
+
+ createErrorMessageLinkGUI(toolkit, rootMainControl);
+
mappingGUISection = this
.createPageSectionHeader(
rootMainControl,
@@ -319,7 +323,8 @@
Composite mainComposite = toolkit.createComposite(mappingGUISection);
mappingGUISection.setClient(mainComposite);
-
+ GridData mapgd = new GridData(GridData.FILL_HORIZONTAL);
+ mappingGUISection.setLayoutData(mapgd);
GridLayout mainLayout = new GridLayout();
mainComposite.setLayout(mainLayout);
@@ -329,12 +334,6 @@
// sashForm.
// sashForm.setSashWidth(1);
- designTimeAnalyzeResultRegion = toolkit.createComposite(sashForm);
- GridLayout ngl = new GridLayout();
- ngl.numColumns = 2;
- ngl.marginWidth = 0;
- designTimeAnalyzeResultRegion.setLayout(ngl);
-
SashForm mappingMainComposite = new SashForm(sashForm, SWT.NONE);
// under the eclipse3.3
// mappingMainComposite.setSashWidth(1);
@@ -462,7 +461,6 @@
toolkit.paintBordersFor(rootMainControl);
form.pack();
- sashForm.setWeights(new int[] { 8, 100 });
if (initSourceTreeViewerProviders()) {
initSourceTreeViewer();
expandSourceConnectionModel();
@@ -476,6 +474,24 @@
initMappingGUIStates();
}
+ protected void createErrorMessageLinkGUI(FormToolkit toolkit,
+ Composite parent) {
+
+ Section secion = this.createPageSectionHeader(parent, Section.TITLE_BAR
+ | Section.DESCRIPTION, "Problems",
+ "Click \"Fix\" link to fix those errors");
+
+ designTimeAnalyzeResultRegion = toolkit.createComposite(secion);
+ GridData gd = new GridData(GridData.FILL_BOTH);
+ GridLayout ngl = new GridLayout();
+ ngl.numColumns = 2;
+ ngl.marginWidth = 0;
+ secion.setLayout(new FillLayout());
+ designTimeAnalyzeResultRegion.setLayoutData(gd);
+ designTimeAnalyzeResultRegion.setLayout(ngl);
+ secion.setClient(designTimeAnalyzeResultRegion);
+ }
+
public void refreshAllGUI() {
sourceTreeViewerInputModel = null;
targetTreeViewerInputModel = null;
@@ -1062,8 +1078,7 @@
SmooksConfigurationFileGenerateContext context) {
if (requiredSelectDataSource(typeID)) {
IStructuredDataCreationWizard wizard1 = ViewerInitorStore
- .getInstance().getStructuredDataCreationWizard(
- typeID);
+ .getInstance().getStructuredDataCreationWizard(typeID);
WizardDialog dialog1 = new WizardDialog(getSite().getShell(),
wizard1);
((Wizard) wizard1).setWindowTitle("Target Data Selection");
@@ -1080,8 +1095,7 @@
SmooksConfigurationFileGenerateContext context) {
if (requiredSelectDataSource(typeID)) {
IStructuredDataCreationWizard wizard1 = ViewerInitorStore
- .getInstance().getStructuredDataCreationWizard(
- typeID);
+ .getInstance().getStructuredDataCreationWizard(typeID);
WizardDialog dialog1 = new WizardDialog(getSite().getShell(),
wizard1);
((Wizard) wizard1).setWindowTitle("Source Data Selection");
@@ -1497,9 +1511,18 @@
imageLabel.setImage(SmooksUIActivator.getDefault()
.getImageRegistry().get(
SmooksGraphConstants.IMAGE_ERROR));
- Label notifyLabel = new Label(designTimeAnalyzeResultRegion,
- SWT.NONE);
- Menu menu = new Menu(getSite().getShell(), SWT.POP_UP);
+
+ Composite fixComposite = new Composite(
+ designTimeAnalyzeResultRegion, SWT.NONE);
+ GridLayout gl = new GridLayout();
+ gl.numColumns = 2;
+ gl.marginHeight = 0;
+ gl.marginWidth = 0 ;
+ fixComposite.setLayout(gl);
+ Label notifyLabel = new Label(fixComposite, SWT.NONE);
+ Hyperlink fixLink = getManagedForm().getToolkit()
+ .createHyperlink(fixComposite, "Fix it", SWT.NONE);
+ final Menu menu = new Menu(getSite().getShell(), SWT.POP_UP);
List<ResolveCommand> list = result.getResolveProblem();
for (Iterator<ResolveCommand> iterator2 = list.iterator(); iterator2
.hasNext();) {
@@ -1528,13 +1551,38 @@
item.setText(resolveCommand.getResolveDescription());
item.setImage(resolveCommand.getImage());
}
+ fixLink.addHyperlinkListener(new IHyperlinkListener(){
+
+ public void linkActivated(HyperlinkEvent e) {
+ menu.setLocation(getSite().getShell().getDisplay().getCursorLocation());
+ menu.setVisible(true);
+ }
+
+ public void linkEntered(HyperlinkEvent e) {
+ }
+
+ public void linkExited(HyperlinkEvent e) {
+ }
+
+ });
notifyLabel.setMenu(menu);
GridData nlgd = new GridData(GridData.FILL_HORIZONTAL);
notifyLabel.setLayoutData(nlgd);
+ nlgd = new GridData(GridData.FILL_HORIZONTAL);
+ fixComposite.setLayoutData(nlgd);
notifyLabel.setText(result.getErrorMessage());
-
}
}
+ // GridData gd = new GridData(GridData.FILL_BOTH);
+
+ if (analyzeResultList.size() == 0) {
+ // gd.widthHint = 0;
+ }
+ try {
+ // designTimeAnalyzeResultRegion.setLayoutData(gd);
+ designTimeAnalyzeResultRegion.getParent().getParent().layout();
+ } finally {
+ }
}
protected void updateWarningMessage() {
15 years, 5 months
JBoss Tools SVN: r12092 - trunk/i18n.
by jbosstools-commits@lists.jboss.org
Author: sflanigan
Date: 2008-11-26 21:28:28 -0500 (Wed, 26 Nov 2008)
New Revision: 12092
Modified:
trunk/i18n/build.xml
trunk/i18n/feature.xsl
Log:
Fixed bundle and feature ids in manifest templates.
Modified: trunk/i18n/build.xml
===================================================================
--- trunk/i18n/build.xml 2008-11-26 22:49:11 UTC (rev 12091)
+++ trunk/i18n/build.xml 2008-11-27 02:28:28 UTC (rev 12092)
@@ -269,7 +269,7 @@
<attribute name="Bundle-Name"
value="${plugin} ${localename} NLS Support"/>
<attribute name="Bundle-SymbolicName"
- value="${plugin}.nl_${locale} ;singleton=true"/>
+ value="${plugin}.nl-${locale} ;singleton=true"/>
<attribute name="Bundle-Version"
value="${PLUGIN_VERSION}"/>
<attribute name="Bundle-Vendor"
@@ -381,8 +381,9 @@
</copy>
<jar destfile="${jardir}/features/${feature}.nl-${locale}_${PLUGIN_VERSION}.jar"
basedir="${propdir}/features/${feature}.nl-${locale}_${PLUGIN_VERSION}" />
- <!-- might want to keep around for debugging: -->
+ <!-- might want to keep around for debugging:
<delete dir="${propdir}/features/${feature}.nl-${locale}_${PLUGIN_VERSION}" />
+ -->
</target>
<target name="p2" description="Generate metadata for Eclipse 3.4's update manager (P2)" >
Modified: trunk/i18n/feature.xsl
===================================================================
--- trunk/i18n/feature.xsl 2008-11-26 22:49:11 UTC (rev 12091)
+++ trunk/i18n/feature.xsl 2008-11-27 02:28:28 UTC (rev 12092)
@@ -11,7 +11,7 @@
<xsl:template match="/feature">
<feature provider-name="%providerName">
- <xsl:attribute name="id"><xsl:value-of select="$feature" />-<xsl:value-of select="$locale" />
+ <xsl:attribute name="id"><xsl:value-of select="$feature" />.nl-<xsl:value-of select="$locale" />
</xsl:attribute>
<!-- NB A few feature labels (eg org.jboss.tools.birt.feature)
use %featureName, which is then replicated in the langpack
15 years, 5 months
JBoss Tools SVN: r12091 - in trunk/jsf/tests/org.jboss.tools.jsf.test: src/org/jboss/tools/jsf/model/pv/test and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2008-11-26 17:49:11 -0500 (Wed, 26 Nov 2008)
New Revision: 12091
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/model/pv/test/JSFPromptingProviderTest.java
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFImportTest.java
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java
Log:
fix test errors
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF 2008-11-26 22:30:03 UTC (rev 12090)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/META-INF/MANIFEST.MF 2008-11-26 22:49:11 UTC (rev 12091)
@@ -19,7 +19,8 @@
org.jboss.tools.jsf,
org.jboss.tools.jsf.ui,
org.jboss.tools.jst.web.ui,
- org.jboss.tools.common.model.ui
+ org.jboss.tools.common.model.ui,
+ org.eclipse.ui.ide;bundle-version="3.4.1"
Bundle-Activator: org.jboss.tools.jsf.plugin.JsfTestPlugin
Bundle-ActivationPolicy: lazy
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/model/pv/test/JSFPromptingProviderTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/model/pv/test/JSFPromptingProviderTest.java 2008-11-26 22:30:03 UTC (rev 12090)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/model/pv/test/JSFPromptingProviderTest.java 2008-11-26 22:49:11 UTC (rev 12091)
@@ -42,8 +42,8 @@
// project = (IProject)ResourcesPlugin.getWorkspace().getRoot().findMember(TEST_PROJECT_NAME);
// if(project==null) {
project = ResourcesUtils.importProject(
- JsfTestPlugin.getDefault().getBundle(), TEST_PROJECT_PATH);
- assertNotNull(project);
+ JsfTestPlugin.getDefault().getBundle(), TEST_PROJECT_PATH);
+ assertNotNull(project);
// }
project.build(IncrementalProjectBuilder.FULL_BUILD, null);
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFImportTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFImportTest.java 2008-11-26 22:30:03 UTC (rev 12090)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFImportTest.java 2008-11-26 22:49:11 UTC (rev 12091)
@@ -2,14 +2,19 @@
import java.io.File;
import java.io.FileFilter;
+import java.lang.reflect.InvocationTargetException;
import java.net.URL;
+import org.eclipse.core.internal.resources.Workspace;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Platform;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.internal.Workbench;
import org.jboss.tools.common.model.XModelFactory;
import org.jboss.tools.common.util.FileUtil;
import org.jboss.tools.jsf.ui.operation.JSFProjectAdoptOperation;
@@ -44,9 +49,17 @@
context.setLinkingToProjectOutsideWorkspace(false);
- JSFProjectAdoptOperation operation = new JSFProjectAdoptOperation(context);
+ final JSFProjectAdoptOperation operation = new JSFProjectAdoptOperation(context);
try {
- operation.run(new NullProgressMonitor());
+ WorkspaceModifyOperation op = new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(IProgressMonitor monitor)
+ throws CoreException, InvocationTargetException,
+ InterruptedException {
+ operation.run(monitor);
+ }
+ };
+ op.run(null);
} catch (Exception ex) {
JUnitUtils.fail("Error in import operation", ex);
}
@@ -99,7 +112,7 @@
}
private void clean() {
- if(temp != null && temp.isDirectory()) {
+ if(temp !=null && temp.isDirectory()) {
FileUtil.clear(temp);
temp.delete();
temp = null;
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java 2008-11-26 22:30:03 UTC (rev 12090)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFModelTest.java 2008-11-26 22:49:11 UTC (rev 12091)
@@ -36,7 +36,6 @@
public void setUp() throws Exception {
provider = new TestProjectProvider("org.jboss.tools.jsf.test", null, "JSFKickStartOldFormat", false);
project = provider.getProject();
- project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
}
public void testModelExists() {
15 years, 5 months
JBoss Tools SVN: r12090 - in trunk/portlet/plugins/org.jboss.tools.portlet.ui: src/org/jboss/tools/portlet/ui and 1 other directories.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2008-11-26 17:30:03 -0500 (Wed, 26 Nov 2008)
New Revision: 12090
Modified:
trunk/portlet/plugins/org.jboss.tools.portlet.ui/plugin.xml
trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/Messages.java
trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/internal/project/facet/PortletFacetInstallPage.java
trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/messages.properties
Log:
JBIDE-2792 Add runtime support for portal
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.ui/plugin.xml
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.ui/plugin.xml 2008-11-26 22:29:50 UTC (rev 12089)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.ui/plugin.xml 2008-11-26 22:30:03 UTC (rev 12090)
@@ -2,14 +2,12 @@
<?eclipse version="3.2"?>
<plugin>
- <!--
<extension
point="org.eclipse.wst.common.project.facet.ui.wizardPages">
<wizard-pages action="jboss.portlet.install">
<page class="org.jboss.tools.portlet.ui.internal.project.facet.PortletFacetInstallPage"/>
</wizard-pages>
</extension>
- -->
<extension
point="org.eclipse.wst.common.project.facet.ui.wizardPages">
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/Messages.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/Messages.java 2008-11-26 22:29:50 UTC (rev 12089)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/Messages.java 2008-11-26 22:30:03 UTC (rev 12090)
@@ -48,8 +48,12 @@
public static String JSFPortletFacetInstallPage_Portletbridge_Runtime;
public static String JSFPortletFacetInstallPage_Portletbridge_Runtime_directory_is_required;
public static String JSFPortletFacetInstallPage_Select_Portletbridge_Runtime;
+ public static String PortletFacetInstallPage_Add;
public static String PortletFacetInstallPage_Add_JBoss_Portlet_capabilities_to_this_Web_Project;
+ public static String PortletFacetInstallPage_Enable_implementation_library;
public static String PortletFacetInstallPage_JBoss_Portlet_Capabilities;
+ public static String PortletFacetInstallPage_User_Library;
+ public static String PortletFacetInstallPage_You_have_to_choose_an_user_library;
public static String PortletUIActivator_The_portlet_xml_file_doesnt_exist;
static {
// initialize resource bundle
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/internal/project/facet/PortletFacetInstallPage.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/internal/project/facet/PortletFacetInstallPage.java 2008-11-26 22:29:50 UTC (rev 12089)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/internal/project/facet/PortletFacetInstallPage.java 2008-11-26 22:30:03 UTC (rev 12090)
@@ -1,14 +1,28 @@
package org.jboss.tools.portlet.ui.internal.project.facet;
+import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jface.dialogs.IDialogSettings;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog;
import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
import org.eclipse.wst.common.frameworks.internal.datamodel.ui.DataModelWizardPage;
import org.eclipse.wst.common.project.facet.ui.IFacetWizardPage;
import org.eclipse.wst.common.project.facet.ui.IWizardContext;
+import org.jboss.tools.portlet.core.IPortletConstants;
+import org.jboss.tools.portlet.core.PortletCoreActivator;
import org.jboss.tools.portlet.ui.Messages;
import org.jboss.tools.portlet.ui.PortletUIActivator;
@@ -19,6 +33,16 @@
IFacetWizardPage {
private IDialogSettings dialogSettings;
+ private Combo implementationLibraryCombo;
+ private boolean deployPortletJars;
+ private boolean enableImplementationLibraryValue;
+ private Button enableImplementationLibrary;
+ //private Button deployButton;
+ private IDialogSettings portletSection;
+ private String implementationLibrary;
+ private Combo userLibraries;
+ private String userLibraryName=null;
+ private Button add;
public PortletFacetInstallPage() {
super(DataModelFactory.createDataModel(new AbstractDataModelProvider() {
@@ -26,15 +50,202 @@
setTitle(Messages.PortletFacetInstallPage_JBoss_Portlet_Capabilities);
setDescription(Messages.PortletFacetInstallPage_Add_JBoss_Portlet_capabilities_to_this_Web_Project);
dialogSettings = PortletUIActivator.getDefault().getDialogSettings();
+ portletSection = dialogSettings
+ .getSection(IPortletConstants.PORTLET_SECTION);
+ if (portletSection == null) {
+ portletSection = dialogSettings
+ .addNewSection(IPortletConstants.PORTLET_SECTION);
+ deployPortletJars = false;
+ enableImplementationLibraryValue = true;
+ portletSection.put(IPortletConstants.DEPLOY_PORTLET_JARS,
+ deployPortletJars);
+ portletSection.put(IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY,
+ enableImplementationLibraryValue);
+ implementationLibrary = getDefaultImplementationLibrary();
+ portletSection.put(IPortletConstants.IMPLEMENTATION_LIBRARY,
+ implementationLibrary);
+ userLibraryName = null;
+ } else {
+ deployPortletJars = portletSection
+ .getBoolean(IPortletConstants.DEPLOY_PORTLET_JARS);
+ enableImplementationLibraryValue = portletSection
+ .getBoolean(IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY);
+ implementationLibrary = portletSection
+ .get(IPortletConstants.IMPLEMENTATION_LIBRARY);
+ if (implementationLibrary == null
+ || implementationLibrary.trim().length() <= 0) {
+ implementationLibrary = getDefaultImplementationLibrary();
+ portletSection.put(IPortletConstants.IMPLEMENTATION_LIBRARY,
+ implementationLibrary);
+ }
+ userLibraryName = portletSection.get(IPortletConstants.USER_LIBRARY_NAME);
+
+ }
}
+ private String getDefaultImplementationLibrary() {
+ boolean checkRuntimes = PortletCoreActivator.getDefault()
+ .getPluginPreferences().getBoolean(
+ PortletCoreActivator.CHECK_RUNTIMES);
+ if (checkRuntimes) {
+ implementationLibrary = IPortletConstants.LIBRARIES_PROVIDED_BY_SERVER_RUNTIME;
+ } else {
+ implementationLibrary = IPortletConstants.LIBRARY_PROVIDED_BY_JBOSS_TOOLS;
+ }
+ return implementationLibrary;
+ }
+
@Override
protected Composite createTopLevelComposite(Composite parent) {
initializeDialogUnits(parent);
Composite composite = new Composite(parent, SWT.NONE);
+ composite.setLayout(new GridLayout(1, false));
+ GridData gd = new GridData(GridData.FILL_BOTH);
+ composite.setLayoutData(gd);
+ enableImplementationLibrary = new Button(composite, SWT.CHECK);
+ enableImplementationLibrary.setText(Messages.PortletFacetInstallPage_Enable_implementation_library);
+ enableImplementationLibrary
+ .setSelection(enableImplementationLibraryValue);
+ enableImplementationLibrary
+ .addSelectionListener(new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ boolean enabled = enableImplementationLibrary
+ .getSelection();
+ model.setBooleanProperty(
+ IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY,
+ enabled);
+ implementationLibraryCombo.setEnabled(enabled);
+ if (enabled) {
+ boolean enableUserLibs = IPortletConstants.USER_LIBRARY.equals(implementationLibraryCombo.getText());
+ userLibraries.setEnabled(enableUserLibs);
+ add.setEnabled(enableUserLibs);
+ } else {
+ userLibraries.setEnabled(enabled);
+ add.setEnabled(enabled);
+ }
+ //deployButton.setEnabled(enabled);
+ validatePage();
+ }
+
+ });
+ implementationLibraryCombo = new Combo(composite, SWT.READ_ONLY);
+ implementationLibraryCombo.add(IPortletConstants.USER_LIBRARY);
+ implementationLibraryCombo.add(IPortletConstants.LIBRARY_PROVIDED_BY_JBOSS_TOOLS);
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ implementationLibraryCombo.setLayoutData(gd);
+ boolean checkRuntimes = PortletCoreActivator.getDefault()
+ .getPluginPreferences().getBoolean(
+ PortletCoreActivator.CHECK_RUNTIMES);
+ if (checkRuntimes) {
+ implementationLibraryCombo
+ .add(IPortletConstants.LIBRARIES_PROVIDED_BY_SERVER_RUNTIME);
+ implementationLibraryCombo.setText(implementationLibrary);
+ } else {
+ if (IPortletConstants.LIBRARIES_PROVIDED_BY_SERVER_RUNTIME
+ .equals(implementationLibrary)) {
+ implementationLibraryCombo
+ .setText(IPortletConstants.LIBRARY_PROVIDED_BY_JBOSS_TOOLS);
+ } else {
+ implementationLibraryCombo.setText(implementationLibrary);
+ }
+ }
+ model.setProperty(IPortletConstants.IMPLEMENTATION_LIBRARY,
+ implementationLibraryCombo
+ .getText());
+ Group userLibrariesGroup = new Group(composite, SWT.NONE);
+ userLibrariesGroup.setText(Messages.PortletFacetInstallPage_User_Library);
+ userLibrariesGroup.setLayout(new GridLayout(2, false));
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ userLibrariesGroup.setLayoutData(gd);
+ userLibraries = new Combo(userLibrariesGroup, SWT.READ_ONLY);
+ gd = new GridData(GridData.FILL_HORIZONTAL);
+ userLibraries.setLayoutData(gd);
+ setLibraryCombo();
+ add = new Button(userLibrariesGroup, SWT.PUSH);
+ add.setText(Messages.PortletFacetInstallPage_Add);
+ add.addSelectionListener(new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+ WorkbenchPreferenceDialog dialog = WorkbenchPreferenceDialog
+ .createDialogOn(shell, "org.eclipse.jdt.ui.preferences.UserLibraryPreferencePage"); //$NON-NLS-1$
+ if (dialog != null) {
+ dialog.open();
+ setLibraryCombo();
+ }
+ }
+
+ });
+ boolean enabled = IPortletConstants.USER_LIBRARY.equals(implementationLibraryCombo
+ .getText());
+ userLibraries.setEnabled(enabled);
+ userLibraries.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ model.setProperty(IPortletConstants.USER_LIBRARY_NAME,
+ userLibraries
+ .getText());
+ userLibraryName = userLibraries.getText();
+ validatePage();
+ }
+ });
+ add.setEnabled(enabled);
+ implementationLibraryCombo.addSelectionListener(new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ boolean enabled = IPortletConstants.USER_LIBRARY
+ .equals(implementationLibraryCombo.getText());
+ userLibraries.setEnabled(enabled);
+ add.setEnabled(enabled);
+ model.setProperty(IPortletConstants.IMPLEMENTATION_LIBRARY,
+ implementationLibraryCombo
+ .getText());
+ validatePage();
+ }
+
+ });
+
+ model.setProperty(IPortletConstants.USER_LIBRARY_NAME,
+ userLibraries
+ .getText());
+ /*deployButton = new Button(composite, SWT.CHECK);
+ deployButton.setText(Messages.JSFPortletFacetInstallPage_Deploy_jars);
+ deployButton.setSelection(deployPortletJars);
+ deployButton.addSelectionListener(new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ model.setBooleanProperty(IPortletConstants.DEPLOY_PORTLET_JARS,
+ deployButton.getSelection());
+ }
+
+ }); */
+ validatePage();
return composite;
}
+ private void setLibraryCombo() {
+ String[] libraryNames = JavaCore.getUserLibraryNames();
+ boolean exists = false;
+ for (int i = 0; i < libraryNames.length; i++) {
+ userLibraries.add(libraryNames[i]);
+ if (libraryNames[i].equals(userLibraryName)) {
+ exists = true;
+ }
+ }
+ if (exists) {
+ userLibraries.setText(userLibraryName);
+ } else {
+ userLibraries.select(0);
+ userLibraryName = userLibraries.getText();
+ }
+ validatePage();
+ }
+
@Override
protected String[] getValidationPropertyNames() {
return new String[0];
@@ -49,14 +260,61 @@
synchHelper = initializeSynchHelper(model);
}
+ @Override
+ public void dispose() {
+ model.removeListener(this);
+ super.dispose();
+ }
+
public void setWizardContext(IWizardContext context) {
- // TODO Auto-generated method stub
}
public void transferStateToConfig() {
- // TODO Auto-generated method stub
}
+ @Override
+ public void storeDefaultSettings() {
+ Display.getDefault().syncExec(new Runnable() {
+
+ public void run() {
+ /*if (deployButton != null) {
+ portletSection.put(IPortletConstants.DEPLOY_PORTLET_JARS,
+ deployButton.getSelection());
+ }*/
+ if (enableImplementationLibrary != null) {
+ portletSection.put(IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY,
+ enableImplementationLibrary.getSelection());
+ }
+ if (implementationLibraryCombo != null) {
+ portletSection.put(IPortletConstants.IMPLEMENTATION_LIBRARY,
+ implementationLibraryCombo.getText());
+ }
+ if (userLibraries != null) {
+ portletSection.put(IPortletConstants.USER_LIBRARY_NAME,
+ userLibraries.getText());
+ }
+
+ }
+
+ });
+ super.storeDefaultSettings();
+ }
+
+ @Override
+ protected void validatePage() {
+ //super.validatePage();
+ if (enableImplementationLibrary == null) {
+ return;
+ }
+ if (enableImplementationLibrary.getSelection() && implementationLibraryCombo.getText().equals(IPortletConstants.USER_LIBRARY) && userLibraries.getText().trim().length() <= 0) {
+ setErrorMessage(Messages.PortletFacetInstallPage_You_have_to_choose_an_user_library);
+ setPageComplete(false);
+ } else {
+ setErrorMessage(null);
+ setPageComplete(true);
+ }
+ }
+
}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/messages.properties
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/messages.properties 2008-11-26 22:29:50 UTC (rev 12089)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.ui/src/org/jboss/tools/portlet/ui/messages.properties 2008-11-26 22:30:03 UTC (rev 12090)
@@ -32,8 +32,12 @@
JSFPortletFacetInstallPage_Portletbridge_Runtime=Portletbridge Runtime
JSFPortletFacetInstallPage_Portletbridge_Runtime_directory_is_required=Portletbridge Runtime directory is required.
JSFPortletFacetInstallPage_Select_Portletbridge_Runtime=Select Portletbridge Runtime
+PortletFacetInstallPage_Add=Add...
PortletFacetInstallPage_Add_JBoss_Portlet_capabilities_to_this_Web_Project=Add JBoss Portlet capabilities to this Web Project
+PortletFacetInstallPage_Enable_implementation_library=Enable implementation library
PortletFacetInstallPage_JBoss_Portlet_Capabilities=JBoss Portlet Capabilities
+PortletFacetInstallPage_User_Library=User Library
+PortletFacetInstallPage_You_have_to_choose_an_user_library=You have to choose an user library
PortletUIActivator_The_portlet_xml_file_doesnt_exist=The portlet.xml file doesn't exist
NewJSFPortletClassWizardPage_Choose_a_JSF_portlet_class=Choose a JSF portlet class:
NewJSFPortletClassWizardPage_Choose_a_Seam_portlet_class=Choose a Seam portlet class:
15 years, 5 months
JBoss Tools SVN: r12089 - in trunk/portlet/plugins/org.jboss.tools.portlet.core: META-INF and 3 other directories.
by jbosstools-commits@lists.jboss.org
Author: snjeza
Date: 2008-11-26 17:29:50 -0500 (Wed, 26 Nov 2008)
New Revision: 12089
Added:
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeLibrariesContainerInitializer.java
Removed:
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet10LibrariesContainerInitializer.java
Modified:
trunk/portlet/plugins/org.jboss.tools.portlet.core/META-INF/MANIFEST.MF
trunk/portlet/plugins/org.jboss.tools.portlet.core/plugin.xml
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/IPortletConstants.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/Messages.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/BasePortletClasspathContainer.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet20LibrariesContainerInitializer.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeComponentProvider.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDataModelProvider.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDelegate.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetPrimaryRuntimeChangedListener.java
trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/messages.properties
Log:
JBIDE-2792 Add runtime support for portal
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/META-INF/MANIFEST.MF 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/META-INF/MANIFEST.MF 2008-11-26 22:29:50 UTC (rev 12089)
@@ -7,6 +7,7 @@
Bundle-Vendor: %BundleVendor
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.wst.common.project.facet.core,
+ org.eclipse.jst.common.project.facet.core,
org.eclipse.core.resources,
org.eclipse.wst.common.frameworks,
org.eclipse.jst.j2ee,
@@ -20,7 +21,8 @@
org.eclipse.ui.ide,
org.eclipse.jem,
org.eclipse.jst.jsf.facesconfig,
- org.eclipse.wst.server.core
+ org.eclipse.wst.server.core,
+ org.eclipse.jem.util
Bundle-ActivationPolicy: lazy
Export-Package: org.jboss.tools.portlet.core,
org.jboss.tools.portlet.core.internal,
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/plugin.xml
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/plugin.xml 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/plugin.xml 2008-11-26 22:29:50 UTC (rev 12089)
@@ -83,14 +83,15 @@
</extension>
<extension point="org.eclipse.jdt.core.classpathContainerInitializer">
- <classpathContainerInitializer class="org.jboss.tools.portlet.core.internal.Portlet10LibrariesContainerInitializer"
- id="org.jboss.tools.portlet.core.internal.portletlibrarycontainer.v10"/>
- </extension>
- <extension point="org.eclipse.jdt.core.classpathContainerInitializer">
<classpathContainerInitializer class="org.jboss.tools.portlet.core.internal.Portlet20LibrariesContainerInitializer"
id="org.jboss.tools.portlet.core.internal.portletlibrarycontainer.v20"/>
</extension>
+ <extension point="org.eclipse.jdt.core.classpathContainerInitializer">
+ <classpathContainerInitializer class="org.jboss.tools.portlet.core.internal.PortletRuntimeLibrariesContainerInitializer"
+ id="org.jboss.tools.portlet.core.internal.portletlibrarycontainer.runtime"/>
+ </extension>
+
<extension point="org.eclipse.wst.common.project.facet.core.facets">
<project-facet id="jboss.jsfportlet">
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/IPortletConstants.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/IPortletConstants.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/IPortletConstants.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -32,11 +32,11 @@
static final String PORTLET_FACET_VERSION_20 = "2.0"; //$NON-NLS-1$
static final String JSFPORTLET_FACET_VERSION_10 = "1.0"; //$NON-NLS-1$
-
- static final String PORTLET_CONTAINER_10_ID = "org.jboss.tools.portlet.core.internal.portletlibrarycontainer.v10"; //$NON-NLS-1$
static final String PORTLET_CONTAINER_20_ID = "org.jboss.tools.portlet.core.internal.portletlibrarycontainer.v20"; //$NON-NLS-1$
+ static final String PORTLET_RUNTIME_CONTAINER_ID= "org.jboss.tools.portlet.core.internal.portletlibrarycontainer.runtime"; //$NON-NLS-1$
+
static final String JSFPORTLET_CONTAINER_10_ID = "org.jboss.tools.portlet.core.internal.jsfportletlibrarycontainer.v10"; //$NON-NLS-1$
static final String PORTLET_INSTANCES_FILE = "WEB-INF/portlet-instances.xml"; //$NON-NLS-1$
@@ -54,5 +54,32 @@
static final String WEB_INF_LIB = "WEB-INF/lib"; //$NON-NLS-1$
static final String JBOSS_PORTLET_FILE = "WEB-INF/jboss-portlet.xml"; //$NON-NLS-1$
+
+ static final String DEPLOY_PORTLET_JARS = "DEPLOY_PORTLET_JARS"; //$NON-NLS-1$
+
+ static final String ENABLE_IMPLEMENTATION_LIBRARY = "ENABLE_IMPLEMENTATION_LIBRARY"; //$NON-NLS-1$
+ static final String PORTLET_SECTION = "portletSection"; //$NON-NLS-1$
+
+ static final String USER_LIBRARY = Messages.IPortletConstants_User_library;
+
+ static final String LIBRARY_PROVIDED_BY_JBOSS_TOOLS = Messages.IPortletConstants_Library_provided_by_JBoss_Tools;
+
+ static final String LIBRARIES_PROVIDED_BY_SERVER_RUNTIME = Messages.IPortletConstants_Libraries_provided_by_server_runtime;
+
+ static final String IMPLEMENTATION_LIBRARY = "implementationLibrary"; //$NON-NLS-1$
+
+ static final String USER_LIBRARY_NAME = "userLibraryName"; //$NON-NLS-1$
+
+ static final String SERVER_DEFAULT_DEPLOY_JBOSS_PORTAL_SAR = "server/default/deploy/jboss-portal.sar"; //$NON-NLS-1$
+
+ static final String SERVER_DEFAULT_DEPLOY_SIMPLE_PORTAL = "server/default/deploy/simple-portal"; //$NON-NLS-1$
+
+ static final String TOMCAT_LIB = "lib"; //$NON-NLS-1$
+
+ static final String JAR = ".jar"; //$NON-NLS-1$
+
+ static final String PORTLET_API = "portlet-api"; //$NON-NLS-1$
+
+
}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/Messages.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/Messages.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/Messages.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -5,6 +5,9 @@
public class Messages extends NLS {
private static final String BUNDLE_NAME = "org.jboss.tools.portlet.core.messages"; //$NON-NLS-1$
public static String BasePortletClasspathContainer_Error_loading_classpath_container;
+ public static String IPortletConstants_Libraries_provided_by_server_runtime;
+ public static String IPortletConstants_Library_provided_by_JBoss_Tools;
+ public static String IPortletConstants_User_library;
public static String JSFPortlet10LibrariesContainerInitializer_Error_loading_classpath_container;
public static String JSFPortlet10LibrariesContainerInitializer_JBoss_JSF_Portlet_Libraries_v1_0;
public static String JSFPortlet10LibrariesContainerInitializer_JBossJSF_Portlet_Classpath_Container_Initializer_v1_0;
@@ -14,15 +17,16 @@
public static String JSFPortletFacetInstallDelegate_Error_loading_classpath_container;
public static String JSFPortletFacetInstallDelegate_Missing_configuration;
public static String JSFPortletFacetInstallDelegate_The_web_xml_file_is_not_updateable;
- public static String Portlet10LibrariesContainerInitializer_1;
- public static String Portlet10LibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer_v1_0;
public static String Portlet20LibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer;
+ public static String PortletLibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer;
public static String Portlet20LibrariesContainerInitializer_JBoss_Portlet_Library;
+ public static String PortletLibrariesContainerInitializer_JBoss_Portlet_Library;
public static String PortletConfigurationPresetFactory10_Portlet_Project_v1_0;
public static String PortletFacetInstallDelegate_Cannot_configure_web_module_for_JBoss_Portlet_Facet;
public static String PortletFacetInstallDelegate_Exception_occured_while_creating_portlet_xml;
public static String PortletFacetInstallDelegate_Missing_configuration;
public static String PortletFacetInstallDelegate_The_web_xml_file_is_not_updateable;
+ public static String PortletFacetInstallDelegate_User_library_name_is_invalid;
public static String PortletPostInstallListener_Cannot_find_Portletbridge_Runtime;
public static String PortletPostInstallListener_Cannot_find_the_examples_directory;
public static String PortletPostInstallListener_Cannot_find_the_RichFacesPortlet_war_file;
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/BasePortletClasspathContainer.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/BasePortletClasspathContainer.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/BasePortletClasspathContainer.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -1,96 +1,24 @@
package org.jboss.tools.portlet.core.internal;
-import java.io.File;
-import java.io.FileFilter;
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-
-import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IAccessRule;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.IJavaProject;
import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainer;
-import org.jboss.ide.eclipse.as.classpath.core.xpl.ClasspathDecorations;
-import org.jboss.tools.portlet.core.Messages;
-import org.jboss.tools.portlet.core.PortletCoreActivator;
-public abstract class BasePortletClasspathContainer extends AbstractClasspathContainer {
- private static final String PORTLET_FOLDER = "portlet"; //$NON-NLS-1$
- public final static String SUFFIX = PORTLET_FOLDER;//$NON-NLS-1$
- public final static String PREFIX = "org.jboss.tools.portlet.core"; //$NON-NLS-1$
- private static final String RESOURCES_FOLDER = "resources"; //$NON-NLS-1$
+public abstract class BasePortletClasspathContainer extends
+ AbstractClasspathContainer {
- public BasePortletClasspathContainer(IPath path, String description,String suffix) {
- super(path, description, suffix);
- }
+ protected static final String PORTLET_FOLDER = "portlet"; //$NON-NLS-1$
+ public final static String SUFFIX = PORTLET_FOLDER;//$NON-NLS-1$
+ public final static String PREFIX = "org.jboss.tools.portlet.core"; //$NON-NLS-1$
+ private IJavaProject project;
- @Override
- protected String getBaseDir() {
- try {
- URL installURL = FileLocator.toFileURL(PortletCoreActivator
- .getDefault().getBundle().getEntry("/")); //$NON-NLS-1$
- return installURL.getFile().toString();
- } catch (IOException e) {
- PortletCoreActivator
- .log(e, Messages.BasePortletClasspathContainer_Error_loading_classpath_container);
- }
- return null;
- }
+ public BasePortletClasspathContainer(IJavaProject project, IPath path,
+ String description, String suffix) {
+ super(path, description, suffix);
+ this.project = project;
+ }
- @Override
- protected IClasspathEntry[] computeEntries() {
- ArrayList<IClasspathEntry> entries = new ArrayList<IClasspathEntry>();
-
- String baseDir = getBaseDir();
- if (baseDir == null)
- return new IClasspathEntry[0];
-
- String version = getPortletVersion();
- File libDir = new File(baseDir
- + "/" + RESOURCES_FOLDER + "/" + PORTLET_FOLDER + "/" + version);//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
- File[] jars = libDir.listFiles(new FileFilter() {
- public boolean accept(File file) {
- return (file.toString().endsWith(".jar"));//$NON-NLS-1$
- }
- });
-
- if (jars != null) {
- for (int i = 0; i < jars.length; i++) {
- File jarFile = jars[i];
-
- IPath entryPath = new Path(jarFile.toString());
-
- IPath sourceAttachementPath = null;
- IPath sourceAttachementRootPath = null;
-
- final ClasspathDecorations dec = decorations
- .getDecorations(getDecorationManagerKey(getPath()
- .toString()), entryPath.toString());
-
- IClasspathAttribute[] attrs = {};
- if (dec != null) {
- sourceAttachementPath = dec.getSourceAttachmentPath();
- sourceAttachementRootPath = dec
- .getSourceAttachmentRootPath();
- attrs = dec.getExtraAttributes();
- }
-
- IAccessRule[] access = {};
- IClasspathEntry entry = JavaCore.newLibraryEntry(entryPath,
- sourceAttachementPath, sourceAttachementRootPath,
- access, attrs, false);
- entries.add(entry);
- }
- }
-
- return entries.toArray(new IClasspathEntry[entries.size()]);
- }
-
- protected abstract String getPortletVersion();
-
+ public IJavaProject getProject() {
+ return project;
+ }
}
Deleted: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet10LibrariesContainerInitializer.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet10LibrariesContainerInitializer.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet10LibrariesContainerInitializer.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -1,53 +0,0 @@
-/*************************************************************************************
- * Copyright (c) 2008 JBoss, a division of Red Hat and others.
- * All rights reserved. This program and the accompanying materials
- * are 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:
- * JBoss, a division of Red Hat - Initial implementation.
- ************************************************************************************/
-package org.jboss.tools.portlet.core.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IJavaProject;
-import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainer;
-import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainerInitializer;
-import org.jboss.tools.portlet.core.IPortletConstants;
-import org.jboss.tools.portlet.core.Messages;
-
-/**
- * @author snjeza
- *
- */
-public class Portlet10LibrariesContainerInitializer extends
- AbstractClasspathContainerInitializer {
-
- public String getDescription(IPath containerPath, IJavaProject project) {
- return Messages.Portlet10LibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer_v1_0;
- }
-
- @Override
- protected AbstractClasspathContainer createClasspathContainer(IPath path) {
- return new Portlet10ClasspathContainer(path);
- }
-
- @Override
- protected String getClasspathContainerID() {
- return IPortletConstants.PORTLET_CONTAINER_10_ID;
- }
-
- private class Portlet10ClasspathContainer extends BasePortletClasspathContainer {
-
- public Portlet10ClasspathContainer(IPath path) {
- super(path, Messages.Portlet10LibrariesContainerInitializer_1, SUFFIX);
- }
-
- @Override
- protected String getPortletVersion() {
- return IPortletConstants.PORTLET_FACET_VERSION_10;
- }
-
- }
-}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet20LibrariesContainerInitializer.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet20LibrariesContainerInitializer.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/Portlet20LibrariesContainerInitializer.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -10,12 +10,27 @@
************************************************************************************/
package org.jboss.tools.portlet.core.internal;
+import java.io.File;
+import java.io.FileFilter;
+import java.io.IOException;
+import java.net.URL;
+import java.util.ArrayList;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jdt.core.IAccessRule;
+import org.eclipse.jdt.core.IClasspathAttribute;
+import org.eclipse.jdt.core.IClasspathEntry;
import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainer;
import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainerInitializer;
+import org.jboss.ide.eclipse.as.classpath.core.xpl.ClasspathDecorations;
import org.jboss.tools.portlet.core.IPortletConstants;
import org.jboss.tools.portlet.core.Messages;
+import org.jboss.tools.portlet.core.PortletCoreActivator;
/**
* @author snjeza
@@ -24,13 +39,22 @@
public class Portlet20LibrariesContainerInitializer extends
AbstractClasspathContainerInitializer {
+ private IJavaProject project;
+
+ @Override
+ public void initialize(IPath containerPath, IJavaProject project)
+ throws CoreException {
+ this.project = project;
+ super.initialize(containerPath, project);
+ }
+
public String getDescription(IPath containerPath, IJavaProject project) {
return Messages.Portlet20LibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer;
}
@Override
protected AbstractClasspathContainer createClasspathContainer(IPath path) {
- return new Portlet10ClasspathContainer(path);
+ return new Portlet20ClasspathContainer(path, project);
}
@Override
@@ -38,16 +62,78 @@
return IPortletConstants.PORTLET_CONTAINER_20_ID;
}
- private class Portlet10ClasspathContainer extends BasePortletClasspathContainer {
+ private class Portlet20ClasspathContainer extends BasePortletClasspathContainer {
- public Portlet10ClasspathContainer(IPath path) {
- super(path, Messages.Portlet20LibrariesContainerInitializer_JBoss_Portlet_Library, SUFFIX);
+ private static final String RESOURCES_FOLDER = "resources"; //$NON-NLS-1$
+
+ public Portlet20ClasspathContainer(IPath path, IJavaProject project) {
+ super(project, path, Messages.Portlet20LibrariesContainerInitializer_JBoss_Portlet_Library, SUFFIX);
}
@Override
- protected String getPortletVersion() {
- return IPortletConstants.PORTLET_FACET_VERSION_20;
+ protected IClasspathEntry[] computeEntries() {
+ ArrayList<IClasspathEntry> entries = new ArrayList<IClasspathEntry>();
+
+ String baseDir = getBaseDir();
+ if (baseDir == null)
+ return new IClasspathEntry[0];
+
+ String version = IPortletConstants.PORTLET_FACET_VERSION_20;
+ File libDir = new File(baseDir
+ + "/" + RESOURCES_FOLDER + "/" + PORTLET_FOLDER + "/" + version);//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+
+ File[] jars = libDir.listFiles(new FileFilter() {
+ public boolean accept(File file) {
+ return (file.toString().endsWith(".jar"));//$NON-NLS-1$
+ }
+ });
+
+ if (jars != null) {
+ for (int i = 0; i < jars.length; i++) {
+ File jarFile = jars[i];
+
+ IPath entryPath = new Path(jarFile.toString());
+
+ IPath sourceAttachementPath = null;
+ IPath sourceAttachementRootPath = null;
+
+ final ClasspathDecorations dec = decorations
+ .getDecorations(getDecorationManagerKey(getPath()
+ .toString()), entryPath.toString());
+
+ IClasspathAttribute[] attrs = {};
+ if (dec != null) {
+ sourceAttachementPath = dec.getSourceAttachmentPath();
+ sourceAttachementRootPath = dec
+ .getSourceAttachmentRootPath();
+ attrs = dec.getExtraAttributes();
+ }
+
+ IAccessRule[] access = {};
+ IClasspathEntry entry = JavaCore.newLibraryEntry(entryPath,
+ sourceAttachementPath, sourceAttachementRootPath,
+ access, attrs, false);
+ entries.add(entry);
+ }
+ }
+
+ return entries.toArray(new IClasspathEntry[entries.size()]);
}
+ @Override
+ protected String getBaseDir() {
+ try {
+ URL installURL = FileLocator.toFileURL(PortletCoreActivator
+ .getDefault().getBundle().getEntry("/")); //$NON-NLS-1$
+ return installURL.getFile().toString();
+ } catch (IOException e) {
+ PortletCoreActivator
+ .log(
+ e,
+ Messages.BasePortletClasspathContainer_Error_loading_classpath_container);
+ }
+ return null;
+ }
+
}
}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeComponentProvider.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeComponentProvider.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeComponentProvider.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -12,22 +12,13 @@
import org.eclipse.wst.common.project.facet.core.runtime.RuntimeManager;
import org.eclipse.wst.server.core.IRuntime;
import org.eclipse.wst.server.core.internal.facets.RuntimeFacetComponentProviderDelegate;
+import org.jboss.tools.portlet.core.IPortletConstants;
import org.jboss.tools.portlet.core.Messages;
import org.jboss.tools.portlet.core.PortletCoreActivator;
public class PortletRuntimeComponentProvider extends
RuntimeFacetComponentProviderDelegate {
- private static final String SERVER_DEFAULT_DEPLOY_JBOSS_PORTAL_SAR = "server/default/deploy/jboss-portal.sar"; //$NON-NLS-1$
-
- private static final String SERVER_DEFAULT_DEPLOY_SIMPLE_PORTAL = "server/default/deploy/simple-portal"; //$NON-NLS-1$
-
- private static final String LIB = "lib"; //$NON-NLS-1$
-
- private static final String JAR = ".jar"; //$NON-NLS-1$
-
- private static final String PORTLET_API = "portlet-api"; //$NON-NLS-1$
-
private static final IRuntimeComponentType PORTAL_TYPE = RuntimeManager
.getRuntimeComponentType("org.jboss.tools.portlet.core.runtime.component"); //$NON-NLS-1$
@@ -52,20 +43,20 @@
return true;
}
// JBoss Portal server
- if (exists(location, SERVER_DEFAULT_DEPLOY_JBOSS_PORTAL_SAR)) {
+ if (exists(location, IPortletConstants.SERVER_DEFAULT_DEPLOY_JBOSS_PORTAL_SAR)) {
return true;
}
// JBoss portletcontainer
- if (exists(location,SERVER_DEFAULT_DEPLOY_SIMPLE_PORTAL)) {
+ if (exists(location,IPortletConstants.SERVER_DEFAULT_DEPLOY_SIMPLE_PORTAL)) {
return true;
}
// Tomcat portletcontainer
- File tomcatLib = new File(location,LIB);
+ File tomcatLib = new File(location,IPortletConstants.TOMCAT_LIB);
if (tomcatLib.exists() && tomcatLib.isDirectory()) {
String[] files = tomcatLib.list(new FilenameFilter() {
public boolean accept(File dir, String name) {
- if (name.startsWith(PORTLET_API) && name.endsWith(JAR)) {
+ if (name.startsWith(IPortletConstants.PORTLET_API) && name.endsWith(IPortletConstants.JAR)) {
return true;
}
return false;
Added: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeLibrariesContainerInitializer.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeLibrariesContainerInitializer.java (rev 0)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/PortletRuntimeLibrariesContainerInitializer.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -0,0 +1,181 @@
+/*************************************************************************************
+ * Copyright (c) 2008 JBoss, a division of Red Hat and others.
+ * All rights reserved. This program and the accompanying materials
+ * are 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:
+ * JBoss, a division of Red Hat - Initial implementation.
+ ************************************************************************************/
+package org.jboss.tools.portlet.core.internal;
+
+import java.io.File;
+import java.io.FileFilter;
+import java.util.ArrayList;
+
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.jdt.core.IAccessRule;
+import org.eclipse.jdt.core.IClasspathAttribute;
+import org.eclipse.jdt.core.IClasspathEntry;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities;
+import org.eclipse.wst.server.core.IRuntime;
+import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainer;
+import org.jboss.ide.eclipse.as.classpath.core.jee.AbstractClasspathContainerInitializer;
+import org.jboss.ide.eclipse.as.classpath.core.xpl.ClasspathDecorations;
+import org.jboss.tools.portlet.core.IPortletConstants;
+import org.jboss.tools.portlet.core.Messages;
+import org.jboss.tools.portlet.core.PortletCoreActivator;
+
+/**
+ * @author snjeza
+ *
+ */
+public class PortletRuntimeLibrariesContainerInitializer extends
+ AbstractClasspathContainerInitializer {
+
+ private IJavaProject project;
+
+ @Override
+ public void initialize(IPath containerPath, IJavaProject project)
+ throws CoreException {
+ this.project = project;
+ super.initialize(containerPath, project);
+ }
+
+ public String getDescription(IPath containerPath, IJavaProject project) {
+ return Messages.PortletLibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer;
+ }
+
+ @Override
+ protected AbstractClasspathContainer createClasspathContainer(IPath path) {
+ return new PortletRuntimeClasspathContainer(path, project);
+ }
+
+ @Override
+ protected String getClasspathContainerID() {
+ return IPortletConstants.PORTLET_RUNTIME_CONTAINER_ID;
+ }
+
+ public class PortletRuntimeClasspathContainer extends
+ BasePortletClasspathContainer {
+
+ public PortletRuntimeClasspathContainer(IPath path, IJavaProject project) {
+ super(
+ project,
+ path,
+ Messages.PortletLibrariesContainerInitializer_JBoss_Portlet_Library,
+ SUFFIX);
+ }
+
+ @Override
+ protected IClasspathEntry[] computeEntries() {
+ ArrayList<IClasspathEntry> entries = new ArrayList<IClasspathEntry>();
+
+ IJavaProject javaProject = getProject();
+
+ if (javaProject != null) {
+ IProject project = javaProject.getProject();
+ if (project != null) {
+ try {
+ IRuntime runtime = J2EEProjectUtilities
+ .getServerRuntime(project);
+ if (runtime != null) {
+ File location = runtime.getLocation().toFile();
+ File libDir = getLibDirectory(location);
+ if (libDir != null) {
+ File[] jars = libDir
+ .listFiles(new FileFilter() {
+ public boolean accept(File file) {
+ String name = file.getName();
+ return (name.startsWith(IPortletConstants.PORTLET_API) && name
+ .endsWith(IPortletConstants.JAR));
+ }
+ });
+
+ if (jars != null) {
+ for (int i = 0; i < jars.length; i++) {
+ File jarFile = jars[i];
+
+ IPath entryPath = new Path(jarFile
+ .toString());
+
+ IPath sourceAttachementPath = null;
+ IPath sourceAttachementRootPath = null;
+
+ final ClasspathDecorations dec = decorations
+ .getDecorations(
+ getDecorationManagerKey(getPath()
+ .toString()),
+ entryPath.toString());
+
+ IClasspathAttribute[] attrs = {};
+ if (dec != null) {
+ sourceAttachementPath = dec
+ .getSourceAttachmentPath();
+ sourceAttachementRootPath = dec
+ .getSourceAttachmentRootPath();
+ attrs = dec.getExtraAttributes();
+ }
+
+ IAccessRule[] access = {};
+ IClasspathEntry entry = JavaCore
+ .newLibraryEntry(
+ entryPath,
+ sourceAttachementPath,
+ sourceAttachementRootPath,
+ access, attrs, false);
+ entries.add(entry);
+ }
+ }
+ }
+ }
+ } catch (CoreException e) {
+ PortletCoreActivator.log(e);
+ }
+ }
+ }
+ return entries.toArray(new IClasspathEntry[entries.size()]);
+ }
+
+ private File getLibDirectory(File location) {
+ File libDirectory = getDirectory(location,
+ IPortletConstants.SERVER_DEFAULT_DEPLOY_JBOSS_PORTAL_SAR);
+ if (libDirectory != null) {
+ libDirectory = new File(libDirectory, "lib"); //$NON-NLS-1$
+ } else {
+ libDirectory = getDirectory(location,
+ IPortletConstants.SERVER_DEFAULT_DEPLOY_SIMPLE_PORTAL);
+ if (libDirectory != null) {
+ libDirectory = new File(libDirectory, "lib"); //$NON-NLS-1$
+ } else {
+ // Tomcat adds portlet-api.jat automatically
+ /*File tomcatLib = new File(location,
+ IPortletConstants.TOMCAT_LIB);
+ if (tomcatLib != null && tomcatLib.isDirectory()) {
+ libDirectory = tomcatLib;
+ }*/
+ }
+ }
+ return libDirectory;
+ }
+
+ private File getDirectory(File location, String portalDir) {
+ if (Platform.getOS().equals(Platform.OS_WIN32)) {
+ portalDir = portalDir.replace("/", "\\"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ File file = new File(location, portalDir);
+ if (file.exists() && file.isDirectory()) {
+ return file;
+ }
+ return null;
+ }
+ }
+}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDataModelProvider.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDataModelProvider.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDataModelProvider.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -10,8 +10,11 @@
************************************************************************************/
package org.jboss.tools.portlet.core.internal.project.facet;
+import java.util.Set;
+
import org.eclipse.wst.common.componentcore.datamodel.FacetInstallDataModelProvider;
import org.jboss.tools.portlet.core.IPortletConstants;
+import org.jboss.tools.portlet.core.Messages;
/**
* @author snjeza
@@ -25,7 +28,30 @@
if(propertyName.equals(FACET_ID)){
return IPortletConstants.PORTLET_FACET_ID;
}
+ if (propertyName.equals(IPortletConstants.DEPLOY_PORTLET_JARS)) {
+ return Boolean.FALSE;
+ }
+ if (propertyName.equals(IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY)) {
+ return Boolean.TRUE;
+ }
+ if (propertyName.equals(IPortletConstants.USER_LIBRARY_NAME)) {
+ return ""; //$NON-NLS-1$
+ }
+ if (propertyName.equals(IPortletConstants.IMPLEMENTATION_LIBRARY)) {
+ return IPortletConstants.LIBRARY_PROVIDED_BY_JBOSS_TOOLS;
+ }
return super.getDefaultProperty(propertyName);
}
+
+ @Override
+ public Set<String> getPropertyNames() {
+ Set<String> propertyNames = super.getPropertyNames();
+ propertyNames.add(IPortletConstants.DEPLOY_PORTLET_JARS);
+ propertyNames.add(IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY);
+ propertyNames.add(IPortletConstants.USER_LIBRARY_NAME);
+ propertyNames.add(IPortletConstants.IMPLEMENTATION_LIBRARY);
+
+ return propertyNames;
+ }
}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDelegate.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDelegate.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetInstallDelegate.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -20,6 +20,7 @@
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.jst.j2ee.model.IModelProvider;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
import org.eclipse.wst.common.project.facet.core.IDelegate;
@@ -76,22 +77,11 @@
}
IJavaProject javaProject = JavaCore.create(project);
+ boolean enableImplementationLibrary = config.getBooleanProperty(IPortletConstants.ENABLE_IMPLEMENTATION_LIBRARY);
+ if (enableImplementationLibrary) {
+ setClasspath(monitor, javaProject, config);
+ }
- IPath containerPath = null;
- //if (IPortletConstants.PORTLET_FACET_VERSION_10.equals(fv.getVersionString())) {
- containerPath = new Path(IPortletConstants.PORTLET_CONTAINER_10_ID);
- //} else {
- containerPath = new Path(IPortletConstants.PORTLET_CONTAINER_20_ID);
- //}
-
- IClasspathEntry entry = JavaCore.newContainerEntry(containerPath, true);
- IClasspathEntry[] entries = javaProject.getRawClasspath();
- IClasspathEntry[] newEntries = new IClasspathEntry[entries.length + 1];
- System.arraycopy( entries, 0, newEntries, 0, entries.length );
- newEntries[entries.length] = entry;
- javaProject.setRawClasspath(newEntries, monitor);
-
-
createPortletXml(project, fv, config, monitor);
if (monitor != null) {
@@ -105,6 +95,49 @@
}
}
+ private void setClasspath(final IProgressMonitor monitor,
+ IJavaProject javaProject, IDataModel config) throws CoreException {
+ boolean deployPortletJars = config.getBooleanProperty(IPortletConstants.DEPLOY_PORTLET_JARS);
+ if (deployPortletJars) {
+ copyLibraries(monitor,javaProject,config);
+ } else {
+ String implementationLibrary = config.getStringProperty(IPortletConstants.IMPLEMENTATION_LIBRARY);
+ if (IPortletConstants.LIBRARY_PROVIDED_BY_JBOSS_TOOLS.equals(implementationLibrary)) {
+ IPath containerPath = new Path(IPortletConstants.PORTLET_CONTAINER_20_ID);
+ setContainerPath(monitor, javaProject, containerPath);
+ } else if (IPortletConstants.LIBRARIES_PROVIDED_BY_SERVER_RUNTIME.equals(implementationLibrary)) {
+ IPath containerPath = new Path(IPortletConstants.PORTLET_RUNTIME_CONTAINER_ID);
+ setContainerPath(monitor, javaProject, containerPath);
+ } else {
+ String libraryName = config.getStringProperty(IPortletConstants.USER_LIBRARY_NAME);
+ if (libraryName != null && libraryName.trim().length() > 0) {
+ IPath containerPath = new Path(JavaCore.USER_LIBRARY_CONTAINER_ID + "/" + libraryName); //$NON-NLS-1$
+ setContainerPath(monitor, javaProject, containerPath);
+ } else {
+ PortletCoreActivator.log(null, Messages.PortletFacetInstallDelegate_User_library_name_is_invalid);
+ }
+ // user library
+ //JavaCore.getCla
+ }
+
+ }
+ }
+
+ private void copyLibraries(IProgressMonitor monitor,
+ IJavaProject javaProject, IDataModel config) {
+ // TODO Auto-generated method stub
+
+ }
+
+ private void setContainerPath(IProgressMonitor monitor, IJavaProject javaProject,IPath containerPath) throws CoreException {
+ IClasspathEntry entry = JavaCore.newContainerEntry(containerPath, true);
+ IClasspathEntry[] entries = javaProject.getRawClasspath();
+ IClasspathEntry[] newEntries = new IClasspathEntry[entries.length + 1];
+ System.arraycopy( entries, 0, newEntries, 0, entries.length );
+ newEntries[entries.length] = entry;
+ javaProject.setRawClasspath(newEntries, monitor);
+ }
+
private void createPortletXml(final IProject project,
final IProjectFacetVersion fv, IDataModel config,
final IProgressMonitor monitor) {
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetPrimaryRuntimeChangedListener.java
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetPrimaryRuntimeChangedListener.java 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/internal/project/facet/PortletFacetPrimaryRuntimeChangedListener.java 2008-11-26 22:29:50 UTC (rev 12089)
@@ -1,14 +1,44 @@
package org.jboss.tools.portlet.core.internal.project.facet;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jdt.core.ClasspathContainerInitializer;
+import org.eclipse.jdt.core.IClasspathContainer;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.wst.common.project.facet.core.IFacetedProject;
+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.events.IFacetedProjectEvent;
import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
+import org.jboss.tools.portlet.core.IPortletConstants;
+import org.jboss.tools.portlet.core.PortletCoreActivator;
+import org.jboss.tools.portlet.core.internal.PortletRuntimeLibrariesContainerInitializer;
public class PortletFacetPrimaryRuntimeChangedListener implements
IFacetedProjectListener {
public void handleEvent(IFacetedProjectEvent event) {
- // TODO Auto-generated method stub
-
+ final IFacetedProject fproj = event.getProject();
+ final IProjectFacet PORTLET_FACET = ProjectFacetsManager
+ .getProjectFacet(IPortletConstants.PORTLET_FACET_ID);
+ if (fproj.hasProjectFacet(PORTLET_FACET)) {
+ //final IProjectFacetVersion fv = fproj
+ // .getInstalledVersion(PORTLET_FACET);
+ try {
+ IPath containerPath = new Path(IPortletConstants.PORTLET_RUNTIME_CONTAINER_ID);
+ IProject project = fproj.getProject();
+ IJavaProject javaProject = JavaCore.create(project);
+ IClasspathContainer containerEntry = JavaCore.getClasspathContainer(containerPath, javaProject);
+ ClasspathContainerInitializer initializer = JavaCore.getClasspathContainerInitializer(IPortletConstants.PORTLET_RUNTIME_CONTAINER_ID);
+ initializer.requestClasspathContainerUpdate(containerPath, javaProject, containerEntry);
+ } catch (CoreException e) {
+ PortletCoreActivator.log(e);
+ }
+ }
}
}
Modified: trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/messages.properties
===================================================================
--- trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/messages.properties 2008-11-26 20:22:41 UTC (rev 12088)
+++ trunk/portlet/plugins/org.jboss.tools.portlet.core/src/org/jboss/tools/portlet/core/messages.properties 2008-11-26 22:29:50 UTC (rev 12089)
@@ -1,4 +1,7 @@
BasePortletClasspathContainer_Error_loading_classpath_container=Error loading classpath container
+IPortletConstants_Libraries_provided_by_server_runtime=Libraries provided by server runtime
+IPortletConstants_Library_provided_by_JBoss_Tools=Library provided by JBoss Tools
+IPortletConstants_User_library=User library
JSFPortlet10LibrariesContainerInitializer_Error_loading_classpath_container=Error loading classpath container
JSFPortlet10LibrariesContainerInitializer_JBoss_JSF_Portlet_Libraries_v1_0=JBoss JSF Portlet Libraries v1.0
JSFPortlet10LibrariesContainerInitializer_JBossJSF_Portlet_Classpath_Container_Initializer_v1_0=JBoss JSF Portlet Classpath Container Initializer v1.0
@@ -8,8 +11,8 @@
JSFPortletFacetInstallDelegate_Error_loading_classpath_container=Error loading classpath container
JSFPortletFacetInstallDelegate_Missing_configuration=Internal Error creating JBoss JSF Portlet Facet. Missing configuration.
JSFPortletFacetInstallDelegate_The_web_xml_file_is_not_updateable=The web.xml file is not updateable
-Portlet10LibrariesContainerInitializer_1=JBoss Portlet Libraries v1.0
-Portlet10LibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer_v1_0=JBoss Portlet Classpath Container Initializer v1.0
+PortletLibrariesContainerInitializer_JBoss_Portlet_Library=JBoss Portlet Libraries
+PortletLibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer=JBoss Portlet Classpath Container Initializer
Portlet20LibrariesContainerInitializer_JBoss_Portlet_Classpath_Container_Initializer=JBoss Portlet Classpath Container Initializer
Portlet20LibrariesContainerInitializer_JBoss_Portlet_Library=JBoss Portlet Library
PortletConfigurationPresetFactory10_Portlet_Project_v1_0=Portlet Project v1.0
@@ -17,6 +20,7 @@
PortletFacetInstallDelegate_Exception_occured_while_creating_portlet_xml=Exception occured while creating portlet.xml
PortletFacetInstallDelegate_Missing_configuration=Internal Error creating JBoss Portlet Facet. Missing configuration.
PortletFacetInstallDelegate_The_web_xml_file_is_not_updateable=The web.xml file is not updateable
+PortletFacetInstallDelegate_User_library_name_is_invalid=User library name is invalid.
PortletPostInstallListener_Cannot_find_Portletbridge_Runtime=Cannot find Portletbridge Runtime.
PortletPostInstallListener_Cannot_find_the_examples_directory=Cannot find the examples directory.
PortletPostInstallListener_Cannot_find_the_RichFacesPortlet_war_file=Cannot find the RichFacesPortlet.war file.
15 years, 5 months
JBoss Tools SVN: r12088 - trunk/vpe/tests/org.jboss.tools.vpe.html.test/resources/htmlTest/WebContent/pages/components/form.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2008-11-26 15:22:41 -0500 (Wed, 26 Nov 2008)
New Revision: 12088
Modified:
trunk/vpe/tests/org.jboss.tools.vpe.html.test/resources/htmlTest/WebContent/pages/components/form/textArea.html.xml
Log:
RESOLVED - issue JBIDE-3242: Need template for textarea.
https://jira.jboss.org/jira/browse/JBIDE-3242
- tests have been changed
Modified: trunk/vpe/tests/org.jboss.tools.vpe.html.test/resources/htmlTest/WebContent/pages/components/form/textArea.html.xml
===================================================================
--- trunk/vpe/tests/org.jboss.tools.vpe.html.test/resources/htmlTest/WebContent/pages/components/form/textArea.html.xml 2008-11-26 20:15:22 UTC (rev 12087)
+++ trunk/vpe/tests/org.jboss.tools.vpe.html.test/resources/htmlTest/WebContent/pages/components/form/textArea.html.xml 2008-11-26 20:22:41 UTC (rev 12088)
@@ -1,8 +1,8 @@
<tests>
<test id="textArea">
<TEXTAREA COLS="10" ROWS="2" ID="textArea" CLASS="textAreaClass"
- STYLE="color: red; -moz-user-modify: read-only;">
- value
+ DIR="ltr" STYLE="color: red;" DISABLED="disabled">
+ value
</TEXTAREA>
</test>
</tests>
\ No newline at end of file
15 years, 5 months
JBoss Tools SVN: r12087 - trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2008-11-26 15:15:22 -0500 (Wed, 26 Nov 2008)
New Revision: 12087
Modified:
trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java
Log:
RESOLVED - issue JBIDE-3298: Adjust Content Tests.
https://jira.jboss.org/jira/browse/JBIDE-3298
- a comment change
Modified: trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java
===================================================================
--- trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java 2008-11-26 20:10:09 UTC (rev 12086)
+++ trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java 2008-11-26 20:15:22 UTC (rev 12087)
@@ -219,9 +219,9 @@
Attr modelAttr = (Attr) modelAttributes.item(i);
String name = modelAttr.getName();
+ // if the attribute has to be skipped, then do it
if ( name != null
&& skippedAtributes.contains(name.toUpperCase()) ) {
- // if the attribute have to be skipped, do it
continue;
}
15 years, 5 months
JBoss Tools SVN: r12086 - trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2008-11-26 15:10:09 -0500 (Wed, 26 Nov 2008)
New Revision: 12086
Modified:
trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java
Log:
RESOLVED - issue JBIDE-3298: Adjust Content Tests.
https://jira.jboss.org/jira/browse/JBIDE-3298
a static variable 'skippedAtributes' has been added to class org.jboss.tools.vpe.ui.test.TestDomUtil .
Modified: trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java
===================================================================
--- trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java 2008-11-26 19:00:10 UTC (rev 12085)
+++ trunk/vpe/tests/org.jboss.tools.vpe.ui.test/src/org/jboss/tools/vpe/ui/test/TestDomUtil.java 2008-11-26 20:10:09 UTC (rev 12086)
@@ -15,7 +15,10 @@
import java.io.FileReader;
import java.io.StringReader;
import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -37,7 +40,15 @@
*
*/
public class TestDomUtil {
-
+ /**
+ * Attributes names that will be skipped in attribute comparison.
+ */
+ public static final Set<String> skippedAtributes = new HashSet<String>();
+ static {
+ // Add here all attributes names to be skipped (IN UPPER CASE!)
+ skippedAtributes.addAll(Arrays.asList("DIR"));//$NON-NLS-1$
+ }
+
final public static String ID_ATTRIBUTE = "id"; //$NON-NLS-1$
final public static String ILLEGAL_ATTRIBUTES = "illegalAttributes"; //$NON-NLS-1$
@@ -208,6 +219,12 @@
Attr modelAttr = (Attr) modelAttributes.item(i);
String name = modelAttr.getName();
+ if ( name != null
+ && skippedAtributes.contains(name.toUpperCase()) ) {
+ // if the attribute have to be skipped, do it
+ continue;
+ }
+
// if there are limitation of attributes
if (ILLEGAL_ATTRIBUTES.equals(name)) {
15 years, 5 months
JBoss Tools SVN: r12085 - in trunk: jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template and 3 other directories.
by jbosstools-commits@lists.jboss.org
Author: yradtsevich
Date: 2008-11-26 14:00:10 -0500 (Wed, 26 Nov 2008)
New Revision: 12085
Added:
trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlTextareaTemplate.java
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesColumnTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataListTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataOrderedListTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesOrderingList.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPaint2DTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java
trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSubTableTemplate.java
trunk/vpe/plugins/org.jboss.tools.vpe.html/templates/vpe-templates-html.xml
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/util/VisualDomUtil.java
Log:
RESOLVED - issue JBIDE-3242: Need template for textarea.
https://jira.jboss.org/jira/browse/JBIDE-3242
- a template class for <textarea> has been created (org.jboss.tools.vpe.html.template.HtmlTextareaTemplate)
- method 'copyAttributes' has been moved from class org.jboss.tools.jsf.vpe.richfaces.ComponentUtil
to class org.jboss.tools.vpe.editor.util.VisualDomUtil
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/ComponentUtil.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -35,7 +35,6 @@
import org.mozilla.interfaces.nsIDOMNodeList;
import org.mozilla.xpcom.XPCOMException;
import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.Text;
@@ -332,57 +331,6 @@
}
/**
- * Copies all attributes from source node to visual node.
- *
- * @param visualNode *
- * param sourceNode the source node
- * @param sourceNode the source node
- * @param visualElement the visual element
- */
- public static void copyAttributes(Node sourceNode, nsIDOMElement visualElement) {
- NamedNodeMap namedNodeMap = sourceNode.getAttributes();
- for (int i = 0; i < namedNodeMap.getLength(); i++) {
- Node attribute = namedNodeMap.item(i);
- // added by Max Areshkau fix for JBIDE-1568
- try {
-
- visualElement.setAttribute(attribute.getNodeName(), attribute.getNodeValue());
- } catch (XPCOMException ex) {
- // if error-code not equals error for incorrect name throws
- // exception
- // error code is NS_ERROR_DOM_INVALID_CHARACTER_ERR=0x80530005
- if (ex.errorcode != 2152923141L) {
- throw ex;
- }
- // else we ignore this exception
- }
- }
- }
-
- /**
- * Copies attributes from source node to visual node.
- *
- * @param sourceElement the source element
- * @param attributes - list names of attributes which will copy
- * @param visualNode *
- * param sourceNode * @param visualElement the visual element
- * @param visualElement the visual element
- */
- public static void copyAttributes(Element sourceElement, List<String> attributes, nsIDOMElement visualElement) {
-
- if (attributes == null)
- return;
-
- for (String attributeName : attributes) {
-
- String attributeValue = sourceElement.getAttribute(attributeName);
- if (attributeValue != null)
- visualElement.setAttribute(attributeName, attributeValue);
- }
-
- }
-
- /**
* Returns true if sourceNode is Facet.
*
* @param sourceNode the source node
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesColumnTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesColumnTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesColumnTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -47,7 +47,7 @@
}
String columnClass = getColumnClass(sourceElement);
- ComponentUtil.copyAttributes(sourceNode, td);
+ VisualDomUtil.copyAttributes(sourceNode, td);
td.setAttribute(HTML.ATTR_CLASS, columnClass);
final VpeCreationData creationData = new VpeCreationData(td);
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataGridTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -21,6 +21,7 @@
import org.jboss.tools.vpe.editor.template.VpeCreationData;
import org.jboss.tools.vpe.editor.util.Constants;
import org.jboss.tools.vpe.editor.util.HTML;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
import org.mozilla.interfaces.nsIDOMNode;
@@ -40,7 +41,7 @@
initStyleClasses(sourceElement);
nsIDOMElement table = visualDocument.createElement(HTML.TAG_TABLE);
- ComponentUtil.copyAttributes(sourceNode, table);
+ VisualDomUtil.copyAttributes(sourceNode, table);
VpeCreationData creationData = new VpeCreationData(table);
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataListTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataListTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataListTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -16,6 +16,7 @@
import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
import org.jboss.tools.vpe.editor.template.VpeChildrenInfo;
import org.jboss.tools.vpe.editor.template.VpeCreationData;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
import org.w3c.dom.Element;
@@ -36,7 +37,7 @@
nsIDOMElement unorderedList = visualDocument.createElement("ul");
ComponentUtil.setCSSLink(pageContext, CSS_FILE_NAME, "richFacesDataList");
- ComponentUtil.copyAttributes(sourceNode, unorderedList);
+ VisualDomUtil.copyAttributes(sourceNode, unorderedList);
ComponentUtil.correctAttribute(sourceElement, unorderedList,
HtmlComponentUtil.HTML_STYLECLASS_ATTR,
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataOrderedListTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataOrderedListTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataOrderedListTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -16,6 +16,7 @@
import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
import org.jboss.tools.vpe.editor.template.VpeChildrenInfo;
import org.jboss.tools.vpe.editor.template.VpeCreationData;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
import org.w3c.dom.Element;
@@ -31,7 +32,7 @@
nsIDOMElement orderedList = visualDocument.createElement("ol");
ComponentUtil.setCSSLink(pageContext, CSS_FILE_NAME, "richFacesDataOrderList");
- ComponentUtil.copyAttributes(sourceNode, orderedList);
+ VisualDomUtil.copyAttributes(sourceNode, orderedList);
ComponentUtil.correctAttribute(sourceElement, orderedList,
HtmlComponentUtil.HTML_STYLECLASS_ATTR,
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesDataTableTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -35,7 +35,7 @@
Element sourceElement = (Element)sourceNode;
nsIDOMElement table = visualDocument.createElement(HTML.TAG_TABLE);
- ComponentUtil.copyAttributes(sourceNode, table);
+ VisualDomUtil.copyAttributes(sourceNode, table);
VpeCreationData creationData = new VpeCreationData(table);
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesOrderingList.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesOrderingList.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesOrderingList.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -15,6 +15,7 @@
import org.jboss.tools.vpe.editor.template.VpeChildrenInfo;
import org.jboss.tools.vpe.editor.template.VpeCreationData;
import org.jboss.tools.vpe.editor.util.HTML;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
import org.w3c.dom.Element;
@@ -541,7 +542,7 @@
contentTable.setAttribute(HtmlComponentUtil.HTML_CELLSPACING_ATTR, "1");
- ComponentUtil.copyAttributes(sourceElement, contentTable);
+ VisualDomUtil.copyAttributes(sourceElement, contentTable);
contentTable.removeAttribute(HtmlComponentUtil.HTML_ATR_HEIGHT);
contentTable.setAttribute(HtmlComponentUtil.HTML_STYLE_ATTR, "width: 100%;");
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPaint2DTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPaint2DTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesPaint2DTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -15,6 +15,7 @@
import org.jboss.tools.vpe.editor.context.VpePageContext;
import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
import org.jboss.tools.vpe.editor.template.VpeCreationData;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
import org.mozilla.interfaces.nsIDOMNode;
@@ -96,7 +97,7 @@
.setAttribute(HtmlComponentUtil.HTML_CLASS_ATTR,
"imgStyleClass");
}
- ComponentUtil.copyAttributes(sourceNode, img);
+ VisualDomUtil.copyAttributes(sourceNode, img);
VpeCreationData creationData = new VpeCreationData(img);
return creationData;
}
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesScrollableDataTableTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -201,7 +201,7 @@
nsIDOMElement tbody = visualDocument
.createElement(HTML.TAG_TBODY);
mainTable.appendChild(tbody);
- ComponentUtil.copyAttributes(sourceNode, tbody);
+ VisualDomUtil.copyAttributes(sourceNode, tbody);
for (int i = 0; i < NUM_ROW; i++) {
new RichFacesDataTableChildrenEncoder(creationData, visualDocument,
Modified: trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSubTableTemplate.java
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSubTableTemplate.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/jsf/plugins/org.jboss.tools.jsf.vpe.richfaces/src/org/jboss/tools/jsf/vpe/richfaces/template/RichFacesSubTableTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -24,6 +24,7 @@
import org.jboss.tools.vpe.editor.template.expression.VpeExpressionBuilderException;
import org.jboss.tools.vpe.editor.template.expression.VpeExpressionException;
import org.jboss.tools.vpe.editor.util.HTML;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
import org.jboss.tools.vpe.editor.util.VpeClassUtil;
import org.mozilla.interfaces.nsIDOMDocument;
import org.mozilla.interfaces.nsIDOMElement;
@@ -63,7 +64,7 @@
if (parentVisualNode == null) {
parentVisualNode = curTr;
}
- ComponentUtil.copyAttributes(sourceElement, curTr);
+ VisualDomUtil.copyAttributes(sourceElement, curTr);
boolean header = false;
boolean footer = false;
@@ -104,7 +105,7 @@
curRow++;
curColumn = 0;
curTr = visualDocument.createElement(HTML.TAG_TR);
- ComponentUtil.copyAttributes(sourceElement, curTr);
+ VisualDomUtil.copyAttributes(sourceElement, curTr);
if (header) {
curTr.setAttribute(HTML.ATTR_CLASS, getHeaderContinueClass());
Modified: trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/util/VisualDomUtil.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/util/VisualDomUtil.java 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/util/VisualDomUtil.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -10,6 +10,8 @@
******************************************************************************/
package org.jboss.tools.vpe.editor.util;
+import java.util.List;
+
import org.eclipse.swt.graphics.Point;
import org.mozilla.interfaces.nsIDOMElement;
import org.mozilla.interfaces.nsIDOMEvent;
@@ -20,7 +22,9 @@
import org.mozilla.interfaces.nsIDOMNodeList;
import org.mozilla.interfaces.nsIDOMRange;
import org.mozilla.interfaces.nsISelection;
+import org.mozilla.xpcom.XPCOMException;
import org.w3c.dom.Element;
+import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
@@ -152,4 +156,55 @@
element.setAttribute(attributeName, attributeValue);
}
+
+ /**
+ * Copies all attributes from source node to visual node.
+ *
+ * @param visualNode *
+ * param sourceNode the source node
+ * @param sourceNode the source node
+ * @param visualElement the visual element
+ */
+ public static void copyAttributes(Node sourceNode, nsIDOMElement visualElement) {
+ NamedNodeMap namedNodeMap = sourceNode.getAttributes();
+ for (int i = 0; i < namedNodeMap.getLength(); i++) {
+ Node attribute = namedNodeMap.item(i);
+ // added by Max Areshkau fix for JBIDE-1568
+ try {
+
+ visualElement.setAttribute(attribute.getNodeName(), attribute.getNodeValue());
+ } catch (XPCOMException ex) {
+ // if error-code not equals error for incorrect name throws
+ // exception
+ // error code is NS_ERROR_DOM_INVALID_CHARACTER_ERR=0x80530005
+ if (ex.errorcode != 2152923141L) {
+ throw ex;
+ }
+ // else we ignore this exception
+ }
+ }
+ }
+
+ /**
+ * Copies attributes from source node to visual node.
+ *
+ * @param sourceElement the source element
+ * @param attributes - list names of attributes which will copy
+ * @param visualNode *
+ * param sourceNode * @param visualElement the visual element
+ * @param visualElement the visual element
+ */
+ public static void copyAttributes(Element sourceElement, List<String> attributes, nsIDOMElement visualElement) {
+
+ if (attributes == null)
+ return;
+
+ for (String attributeName : attributes) {
+
+ String attributeValue = sourceElement.getAttribute(attributeName);
+ if (attributeValue != null)
+ visualElement.setAttribute(attributeName, attributeValue);
+ }
+
+ }
}
Added: trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlTextareaTemplate.java
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlTextareaTemplate.java (rev 0)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.html/src/org/jboss/tools/vpe/html/template/HtmlTextareaTemplate.java 2008-11-26 19:00:10 UTC (rev 12085)
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2007-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
+ *
+ * Contributor:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.vpe.html.template;
+
+import org.jboss.tools.vpe.editor.context.VpePageContext;
+import org.jboss.tools.vpe.editor.mapping.NodeData;
+import org.jboss.tools.vpe.editor.mapping.VpeElementData;
+import org.jboss.tools.vpe.editor.template.VpeAbstractTemplate;
+import org.jboss.tools.vpe.editor.template.VpeCreationData;
+import org.jboss.tools.vpe.editor.util.HTML;
+import org.jboss.tools.vpe.editor.util.VisualDomUtil;
+import org.mozilla.interfaces.nsIDOMDocument;
+import org.mozilla.interfaces.nsIDOMElement;
+import org.mozilla.interfaces.nsIDOMNode;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+
+/**
+ * @author yradtsevich
+ *
+ */
+public class HtmlTextareaTemplate extends VpeAbstractTemplate {
+
+
+ public VpeCreationData create(VpePageContext pageContext, Node sourceNode,
+ nsIDOMDocument visualDocument) {
+ final nsIDOMElement textarea = visualDocument.createElement(HTML.TAG_TEXTAREA);
+ VisualDomUtil.copyAttributes(sourceNode, textarea);
+
+
+ final NodeList childNodes = sourceNode.getChildNodes();
+ final int childNodesLength = childNodes.getLength();
+ for (int i = 0; i < childNodesLength; i++) {
+ final Node child = childNodes.item(i);
+ if (child.getNodeType() == Node.TEXT_NODE) {
+ final nsIDOMNode text = visualDocument.createTextNode(child.getNodeValue());
+ textarea.appendChild(text);
+ }
+ }
+
+ final VpeCreationData creationData = new VpeCreationData(textarea);
+
+ final VpeElementData textElementsData = new VpeElementData();
+ textElementsData.addNodeData(new NodeData(sourceNode.getLastChild(), textarea));
+ creationData.setElementData(textElementsData);
+
+ return creationData;
+ }
+
+ /**
+ * @see org.jboss.tools.vpe.editor.template.VpeAbstractTemplate#isRecreateAtAttrChange(org.jboss.tools.vpe.editor.context.VpePageContext, org.w3c.dom.Element, org.mozilla.interfaces.nsIDOMDocument, org.mozilla.interfaces.nsIDOMElement, java.lang.Object, java.lang.String, java.lang.String)
+ */
+ @Override
+ public boolean isRecreateAtAttrChange(VpePageContext pageContext,
+ Element sourceElement, nsIDOMDocument visualDocument,
+ nsIDOMElement visualNode, Object data, String name, String value) {
+ return true;
+ }
+}
Modified: trunk/vpe/plugins/org.jboss.tools.vpe.html/templates/vpe-templates-html.xml
===================================================================
--- trunk/vpe/plugins/org.jboss.tools.vpe.html/templates/vpe-templates-html.xml 2008-11-26 16:58:22 UTC (rev 12084)
+++ trunk/vpe/plugins/org.jboss.tools.vpe.html/templates/vpe-templates-html.xml 2008-11-26 19:00:10 UTC (rev 12085)
@@ -1929,21 +1929,21 @@
</vpe:tag>
<vpe:tag name="textarea" case-sensitive="no">
- <vpe:template children="yes" modify="no">
- <vpe:copy attrs="id,style,class,rows,cols" />
- <vpe:resize>
+ <vpe:template children="no" modify="yes"
+ class="org.jboss.tools.vpe.html.template.HtmlTextareaTemplate">
+ <vpe:resize>
<vpe:width width-attr="style.width" />
<vpe:height height-attr="style.height" />
</vpe:resize>
- <vpe:dnd>
+ <!-- vpe:dnd>
<vpe:drag start-enable="yes" />
<vpe:drop container="yes">
<vpe:container-child tag-name="#text" />
</vpe:drop>
- </vpe:dnd>
+ </vpe:dnd-->
<vpe:textFormatting use-default-formats="yes">
- </vpe:textFormatting>
- </vpe:template>
+ </vpe:textFormatting>
+ </vpe:template>
</vpe:tag>
<vpe:tag name="tfoot" case-sensitive="no">
15 years, 5 months
JBoss Tools SVN: r12084 - trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test.
by jbosstools-commits@lists.jboss.org
Author: dgolovin
Date: 2008-11-26 11:58:22 -0500 (Wed, 26 Nov 2008)
New Revision: 12084
Modified:
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFBeansTest.java
trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/ModelFormat_2_0_0_Test.java
Log:
unnecessary refreshLocal() calls were removed
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFBeansTest.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFBeansTest.java 2008-11-26 16:48:15 UTC (rev 12083)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/JSFBeansTest.java 2008-11-26 16:58:22 UTC (rev 12084)
@@ -29,7 +29,6 @@
public void setUp() throws CoreException {
provider = new TestProjectProvider("org.jboss.tools.jsf.test", null, "JSFKickStartOldFormat", false);
project = provider.getProject();
- project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
}
public void testBeanWithSuper() {
Modified: trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/ModelFormat_2_0_0_Test.java
===================================================================
--- trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/ModelFormat_2_0_0_Test.java 2008-11-26 16:48:15 UTC (rev 12083)
+++ trunk/jsf/tests/org.jboss.tools.jsf.test/src/org/jboss/tools/jsf/test/ModelFormat_2_0_0_Test.java 2008-11-26 16:58:22 UTC (rev 12084)
@@ -38,11 +38,6 @@
public void setUp() throws Exception {
provider = new TestProjectProvider("org.jboss.tools.jsf.test", null, "JSFKickStartOldFormat", false);
project = provider.getProject();
- try {
- project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
- } catch (Exception e) {
- e.printStackTrace();
- }
}
public void testModelExists() {
@@ -93,11 +88,8 @@
}
}
-
protected void tearDown() throws Exception {
- if(provider != null) {
- provider.dispose();
- }
+ provider.dispose();
}
}
15 years, 5 months