Bug 581077 Jakarta EE 10 EjbBeans with jakarta.-packagename
Change-Id: Ic729c405101e37810d14e22caa8fd0aaa11c5b4e
diff --git a/plugins/org.eclipse.jst.ejb.ui/plugin.properties b/plugins/org.eclipse.jst.ejb.ui/plugin.properties
index 5fc51e4..c1d25ca 100644
--- a/plugins/org.eclipse.jst.ejb.ui/plugin.properties
+++ b/plugins/org.eclipse.jst.ejb.ui/plugin.properties
@@ -100,10 +100,10 @@
ejbAnnotationDecorator.description=Adds decorator(s) to the Enterprise Bean which are annotated.
create.ejb.module_ui_=Create an EJB module
-BeanEjbRegionWizard.name=Session Bean (EJB 3.x)
-BeanWebRegionWizard.description=Create a new EJB 3.x Session Bean
-MDBEjbRegionWizard.name=Message-Driven Bean (EJB 3.x)
-MDBEjbRegionWizard.description=Create a new EJB 3.x Message-Driven Bean
+BeanEjbRegionWizard.name=Session Bean (EJB 3.x/4.x)
+BeanWebRegionWizard.description=Create a new EJB 3.x/4.x Session Bean
+MDBEjbRegionWizard.name=Message-Driven Bean (EJB 3.x/4.x)
+MDBEjbRegionWizard.description=Create a new EJB 3.x/4.x Message-Driven Bean
EJBTIMER.ejbtimerlabel=EJB Timer
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/AddEjbTimerTemplateModel.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/AddEjbTimerTemplateModel.java
index 2e9245a..5e50497 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/AddEjbTimerTemplateModel.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/AddEjbTimerTemplateModel.java
@@ -40,9 +40,9 @@
public Collection<String> getImports() {
Collection<String> collection = super.getImports();
- collection.add(QUALIFIED_SCHEDULE);
- collection.add(QUALIFIED_STATELESS);
- collection.add(QUALIFIED_TIMER);
+ collection.add(convertToJakartaPackage(QUALIFIED_SCHEDULE));
+ collection.add(convertToJakartaPackage(QUALIFIED_STATELESS));
+ collection.add(convertToJakartaPackage(QUALIFIED_TIMER));
return collection;
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateEnterpriseBeanTemplateModel.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateEnterpriseBeanTemplateModel.java
index b03ffa2..46c8129 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateEnterpriseBeanTemplateModel.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateEnterpriseBeanTemplateModel.java
@@ -11,6 +11,7 @@
package org.eclipse.jst.j2ee.ejb.internal.operations;
import static org.eclipse.jst.j2ee.ejb.internal.operations.INewEnterpriseBeanClassDataModelProperties.TRANSACTION_TYPE;
+import static org.eclipse.jst.j2ee.ejb.internal.operations.INewEnterpriseBeanClassDataModelProperties.USE_JAKARTA_PACKAGENAME;
import org.eclipse.jst.j2ee.internal.common.operations.CreateJavaEEArtifactTemplateModel;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
@@ -18,6 +19,10 @@
public class CreateEnterpriseBeanTemplateModel extends
CreateJavaEEArtifactTemplateModel {
+ private static final String JAKARTA = "jakarta"; //$NON-NLS-1$
+
+ protected static final String JAVAX = "javax"; //$NON-NLS-1$
+
protected static final String ATT_MAPPED_NAME = "mappedName"; //$NON-NLS-1$
protected static final String QUOTATION_STRING = "\""; //$NON-NLS-1$
@@ -35,4 +40,11 @@
else
throw new IllegalStateException("illegal transaction type: " + transactionType); //$NON-NLS-1$
}
+
+ public String convertToJakartaPackage(String qualifiedName) {
+ if (dataModel.getBooleanProperty(USE_JAKARTA_PACKAGENAME)) {
+ return qualifiedName.replace(CreateEnterpriseBeanTemplateModel.JAVAX, CreateEnterpriseBeanTemplateModel.JAKARTA);
+ }
+ return qualifiedName;
+ }
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateMessageDrivenBeanTemplateModel.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateMessageDrivenBeanTemplateModel.java
index ebe5db2..173c753 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateMessageDrivenBeanTemplateModel.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateMessageDrivenBeanTemplateModel.java
@@ -51,18 +51,18 @@
public Collection<String> getImports() {
Collection<String> collection = super.getImports();
- collection.add(QUALIFIED_MESSAGE_DRIVEN);
+ collection.add(convertToJakartaPackage(QUALIFIED_MESSAGE_DRIVEN));
if (isJMS()){
- collection.add(QUALIFIED_ACTIVATION_CONFIG_PROPERTY);
- collection.add(NewMessageDrivenBeanClassDataModelProvider.QUALIFIED_JMS_MESSAGELISTENER);
- collection.add(QUALIFIED_JSM_MESSAGE);
+ collection.add(convertToJakartaPackage(QUALIFIED_ACTIVATION_CONFIG_PROPERTY));
+ collection.add(convertToJakartaPackage(NewMessageDrivenBeanClassDataModelProvider.QUALIFIED_JMS_MESSAGELISTENER));
+ collection.add(convertToJakartaPackage(QUALIFIED_JSM_MESSAGE));
}
if (!isContainerType()) {
- collection.add(QUALIFIED_TRANSACTION_MANAGEMENT);
- collection.add(QUALIFIED_TRANSACTION_MANAGEMENT_TYPE);
+ collection.add(convertToJakartaPackage(QUALIFIED_TRANSACTION_MANAGEMENT));
+ collection.add(convertToJakartaPackage(QUALIFIED_TRANSACTION_MANAGEMENT_TYPE));
}
- collection.add(dataModel.getStringProperty(MESSAGE_LISTENER_INTERFACE));
+ collection.add(convertToJakartaPackage(dataModel.getStringProperty(MESSAGE_LISTENER_INTERFACE)));
return collection;
}
@@ -75,9 +75,9 @@
if (isJMS()){
String destinationType = dataModel.getStringProperty(DESTINATION_TYPE);
if (destinationType.equals(DestinationType.QUEUE.toString()))
- activationConfigProperties.put(PROP_DESTINATION_TYPE, "javax.jms.Queue"); //$NON-NLS-1$
+ activationConfigProperties.put(PROP_DESTINATION_TYPE, convertToJakartaPackage("javax.jms.Queue")); //$NON-NLS-1$
else if (destinationType.equals(DestinationType.TOPIC.toString()))
- activationConfigProperties.put(PROP_DESTINATION_TYPE, "javax.jms.Topic"); //$NON-NLS-1$
+ activationConfigProperties.put(PROP_DESTINATION_TYPE, convertToJakartaPackage("javax.jms.Topic")); //$NON-NLS-1$
else
throw new IllegalStateException("illegal destination type: " + destinationType); //$NON-NLS-1$
}
@@ -113,7 +113,7 @@
while (iterator.hasNext()) {
Method method = iterator.next();
- if (ON_MESSAGE.equals(method.getName()) && ON_MESSAGE_SIGNATURE.equals(method.getSignature())) {
+ if (ON_MESSAGE.equals(method.getName()) && convertToJakartaPackage(ON_MESSAGE_SIGNATURE).equals(method.getSignature())) {
iterator.remove();
}
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateSessionBeanTemplateModel.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateSessionBeanTemplateModel.java
index f286139..bd5f535 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateSessionBeanTemplateModel.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/CreateSessionBeanTemplateModel.java
@@ -64,54 +64,54 @@
String stateType = dataModel.getStringProperty(STATE_TYPE);
if (stateType.equals(StateType.STATELESS.toString())) {
- collection.add(QUALIFIED_STATELESS);
+ collection.add(convertToJakartaPackage(QUALIFIED_STATELESS));
} else if (stateType.equals(StateType.STATEFUL.toString())) {
- collection.add(QUALIFIED_STATEFUL);
+ collection.add(convertToJakartaPackage(QUALIFIED_STATEFUL));
} else if (stateType.equals(StateType.SINGLETON.toString())) {
- collection.add(QUALIFIED_SINGLETON);
+ collection.add(convertToJakartaPackage(QUALIFIED_SINGLETON));
} else {
throw new IllegalStateException("illegal state type: " + stateType); //$NON-NLS-1$
}
if (!isContainerType()) {
- collection.add(QUALIFIED_TRANSACTION_MANAGEMENT);
- collection.add(QUALIFIED_TRANSACTION_MANAGEMENT_TYPE);
+ collection.add(convertToJakartaPackage(QUALIFIED_TRANSACTION_MANAGEMENT));
+ collection.add(convertToJakartaPackage(QUALIFIED_TRANSACTION_MANAGEMENT_TYPE));
}
if (isRemoteHomeChecked()) {
- collection.add(QUALIFIED_REMOTE_HOME);
+ collection.add(convertToJakartaPackage(QUALIFIED_REMOTE_HOME));
collection.add(remoteHomeClassName);
}
if (isLocalHomeChecked()) {
- collection.add(QUALIFIED_LOCAL_HOME);
+ collection.add(convertToJakartaPackage(QUALIFIED_LOCAL_HOME));
collection.add(localHomeClassName);
}
if (isNoInterfaceChecked()) {
- collection.add(QUALIFIED_LOCAL_BEAN);
+ collection.add(convertToJakartaPackage(QUALIFIED_LOCAL_BEAN));
}
if (isAsynchronous()) {
- collection.add(QUALIFIED_ASYNCHRONOUS);
+ collection.add(convertToJakartaPackage(QUALIFIED_ASYNCHRONOUS));
}
List<BusinessInterface> interfaces = getBusinessInterfaces();
if (addBusinessAnnotationToBeanClass()){
for (BusinessInterface iface : interfaces) {
if (iface.isLocal()) {
- collection.add(QUALIFIED_LOCAL);
+ collection.add(convertToJakartaPackage(QUALIFIED_LOCAL));
} else if (iface.isRemote()) {
- collection.add(QUALIFIED_REMOTE);
+ collection.add(convertToJakartaPackage(QUALIFIED_REMOTE));
}
}
}
else {
for (BusinessInterface iface : interfaces) {
if (iface.isLocal() && iface.exists()) {
- collection.add(QUALIFIED_LOCAL);
+ collection.add(convertToJakartaPackage(QUALIFIED_LOCAL));
} else if (iface.isRemote() && iface.exists()) {
- collection.add(QUALIFIED_REMOTE);
+ collection.add(convertToJakartaPackage(QUALIFIED_REMOTE));
}
}
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/INewEnterpriseBeanClassDataModelProperties.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/INewEnterpriseBeanClassDataModelProperties.java
index 9ec9386..0001afd 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/INewEnterpriseBeanClassDataModelProperties.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/INewEnterpriseBeanClassDataModelProperties.java
@@ -34,5 +34,12 @@
* @see TransactionType
*/
public static final String TRANSACTION_TYPE = "INewEnterpriseBeanClassDataModelProperties.TRANSACTION_TYPE"; //$NON-NLS-1$
-
+
+ /**
+ * Optional, boolean property used to specify whether to generate jakarta vs. javax packagenames.
+ * The default is true for EJB 4.0 or JEE10 projects, otherwise -
+ * false.
+ */
+ public static final String USE_JAKARTA_PACKAGENAME = "INewEnterpriseBeanClassDataModelProperties.USE_JAKARTA_PACKAGENAME"; //$NON-NLS-1$
+
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalBusinessInterfaceTemplate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalBusinessInterfaceTemplate.java
index 0e36565..8ef1107 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalBusinessInterfaceTemplate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalBusinessInterfaceTemplate.java
@@ -46,7 +46,7 @@
if (model.addBusinessAnnotationToInterface()) {
- stringBuffer.append(TEXT_4);
+ stringBuffer.append(model.convertToJakartaPackage(TEXT_4));
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalComponentInterfaceTemplate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalComponentInterfaceTemplate.java
index 35dd8f8..607e900 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalComponentInterfaceTemplate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalComponentInterfaceTemplate.java
@@ -40,7 +40,7 @@
}
- stringBuffer.append(TEXT_3);
+ stringBuffer.append(model.convertToJakartaPackage(TEXT_3));
stringBuffer.append( model.getLocalComponentClassSimpleName() );
stringBuffer.append(TEXT_4);
stringBuffer.append(TEXT_5);
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalHomeInterfaceTemplate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalHomeInterfaceTemplate.java
index ea95fe5..2f040e1 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalHomeInterfaceTemplate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/LocalHomeInterfaceTemplate.java
@@ -45,7 +45,7 @@
}
- stringBuffer.append(TEXT_3);
+ stringBuffer.append(model.convertToJakartaPackage(TEXT_3));
if(!model.getLocalComponentPackage().equals(model.getLocalHomePackage())){
stringBuffer.append(TEXT_4);
stringBuffer.append( model.getLocalComponentPackage());
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewEnterpriseBeanClassDataModelProvider.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewEnterpriseBeanClassDataModelProvider.java
index c593922..6af161b 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewEnterpriseBeanClassDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewEnterpriseBeanClassDataModelProvider.java
@@ -14,6 +14,7 @@
import static org.eclipse.jst.j2ee.ejb.internal.operations.INewEnterpriseBeanClassDataModelProperties.EJB_NAME;
import static org.eclipse.jst.j2ee.ejb.internal.operations.INewEnterpriseBeanClassDataModelProperties.MAPPED_NAME;
import static org.eclipse.jst.j2ee.ejb.internal.operations.INewEnterpriseBeanClassDataModelProperties.TRANSACTION_TYPE;
+import static org.eclipse.jst.j2ee.ejb.internal.operations.INewEnterpriseBeanClassDataModelProperties.USE_JAKARTA_PACKAGENAME;
import static org.eclipse.jst.j2ee.internal.common.operations.INewJavaClassDataModelProperties.CLASS_NAME;
import static org.eclipse.jst.j2ee.internal.common.operations.INewJavaClassDataModelProperties.JAVA_PACKAGE;
import static org.eclipse.jst.j2ee.internal.common.operations.INewJavaClassDataModelProperties.SUPERCLASS;
@@ -59,6 +60,7 @@
propertyNames.add(EJB_NAME);
propertyNames.add(MAPPED_NAME);
propertyNames.add(TRANSACTION_TYPE);
+ propertyNames.add(USE_JAKARTA_PACKAGENAME);
return propertyNames;
}
@@ -85,7 +87,9 @@
return ""; //$NON-NLS-1$
} else if (propertyName.equals(TRANSACTION_TYPE)) {
return TransactionType.CONTAINER.toString();
- }
+ } else if (propertyName.equals(USE_JAKARTA_PACKAGENAME)) {
+ return Boolean.valueOf(ejb4xOrLater());
+ }
// Otherwise check super for default value for property
return super.getDefaultProperty(propertyName);
@@ -188,6 +192,7 @@
// constant array used for version tolerance: EJB version, Web version, Web Fragment version
private static final int EJB31_VERSIONS[] = {J2EEVersionConstants.VERSION_3_1, J2EEVersionConstants.VERSION_3_0, J2EEVersionConstants.VERSION_3_0};
private static final int EJB32_VERSIONS[] = {J2EEVersionConstants.VERSION_3_2, J2EEVersionConstants.VERSION_3_1, J2EEVersionConstants.VERSION_3_1};
+ private static final int EJB40_VERSIONS[] = {J2EEVersionConstants.VERSION_4_0, J2EEVersionConstants.VERSION_5_0, J2EEVersionConstants.VERSION_5_0};
protected boolean ejb3xOrLater(int ejbVersion) {
boolean retVal = false;
@@ -232,4 +237,40 @@
return retVal;
}
+
+ protected boolean ejb4xOrLater() {
+ boolean retVal = false;
+ IProject project = getTargetProject();
+ // default to EJB 31
+ int ejbVersions[] = EJB40_VERSIONS;
+ IProjectFacetVersion facetVersion = null;
+ int versionToCheck = -1;
+
+
+ if (project != null)
+ {
+ if (JavaEEProjectUtilities.isEJBProject(project))
+ {
+ facetVersion = JavaEEProjectUtilities.getProjectFacetVersion(project, IJ2EEFacetConstants.EJB);
+ versionToCheck = ejbVersions[0];
+ }
+ else if (JavaEEProjectUtilities.isDynamicWebProject(project))
+ {
+ facetVersion = JavaEEProjectUtilities.getProjectFacetVersion(project, IJ2EEFacetConstants.DYNAMIC_WEB);
+ versionToCheck = ejbVersions[1];
+ }
+ else if (JavaEEProjectUtilities.isWebFragmentProject(project))
+ {
+ facetVersion = JavaEEProjectUtilities.getProjectFacetVersion(project, IJ2EEFacetConstants.WEBFRAGMENT);
+ versionToCheck = ejbVersions[2];
+ }
+ if (facetVersion != null)
+ {
+ int version = J2EEVersionUtil.convertVersionStringToInt(facetVersion.getVersionString());
+ retVal = version >= versionToCheck;
+ }
+ }
+ return retVal;
+ }
+
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewMessageDrivenBeanClassDataModelProvider.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewMessageDrivenBeanClassDataModelProvider.java
index e0f9d11..b559abe 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewMessageDrivenBeanClassDataModelProvider.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/NewMessageDrivenBeanClassDataModelProvider.java
@@ -33,6 +33,8 @@
public static final String QUALIFIED_JMS_MESSAGELISTENER = "javax.jms.MessageListener"; //$NON-NLS-1$
+ public static final String QUALIFIED_JMS_MESSAGELISTENER_JAKARTA = "jakarta.jms.MessageListener"; //$NON-NLS-1$
+
@Override
public IDataModelOperation getDefaultOperation() {
return new AddMessageDrivenBeanOperation(getDataModel());
@@ -71,7 +73,11 @@
public Object getDefaultProperty(String propertyName) {
if (propertyName.equals(INTERFACES)){
List<String> list = new ArrayList<String>();
- list.add(QUALIFIED_JMS_MESSAGELISTENER);
+ if(ejb4xOrLater()) {
+ list.add(QUALIFIED_JMS_MESSAGELISTENER_JAKARTA);
+ }else {
+ list.add(QUALIFIED_JMS_MESSAGELISTENER);
+ }
return list;
} else if (propertyName.equals(SUPERCLASS)) {
return ""; //$NON-NLS-1$
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteBusinessInterfaceTemplate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteBusinessInterfaceTemplate.java
index 21dae54..c055f5e 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteBusinessInterfaceTemplate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteBusinessInterfaceTemplate.java
@@ -46,7 +46,7 @@
if (model.addBusinessAnnotationToInterface()) {
- stringBuffer.append(TEXT_4);
+ stringBuffer.append(model.convertToJakartaPackage(TEXT_4));
}
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteComponentInterfaceTemplate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteComponentInterfaceTemplate.java
index 1b7064f..d53ea1a 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteComponentInterfaceTemplate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteComponentInterfaceTemplate.java
@@ -40,7 +40,7 @@
}
- stringBuffer.append(TEXT_3);
+ stringBuffer.append(model.convertToJakartaPackage(TEXT_3));
stringBuffer.append( model.getRemoteComponentClassSimpleName() );
stringBuffer.append(TEXT_4);
stringBuffer.append(TEXT_5);
diff --git a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteHomeInterfaceTemplate.java b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteHomeInterfaceTemplate.java
index 801f6a9..8d50d6d 100644
--- a/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteHomeInterfaceTemplate.java
+++ b/plugins/org.eclipse.jst.j2ee.ejb/ejb/org/eclipse/jst/j2ee/ejb/internal/operations/RemoteHomeInterfaceTemplate.java
@@ -45,7 +45,7 @@
}
- stringBuffer.append(TEXT_3);
+ stringBuffer.append(model.convertToJakartaPackage(TEXT_3));
if(!model.getRemoteComponentPackage().equals(model.getRemoteHomePackage())){
stringBuffer.append(TEXT_4);
stringBuffer.append( model.getRemoteComponentPackage() );
diff --git a/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/EjbAnnotationFactory.java b/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/EjbAnnotationFactory.java
index b99619b..f5e2177 100644
--- a/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/EjbAnnotationFactory.java
+++ b/plugins/org.eclipse.jst.jee.ejb/ejb/org/eclipse/jst/jee/model/internal/EjbAnnotationFactory.java
@@ -65,6 +65,7 @@
private static final String LOCAL_HOME = "LocalHome"; //$NON-NLS-1$
private static final String REMOTE_HOME = "RemoteHome"; //$NON-NLS-1$
private static final String JAVAX_EJB_TIMER = "javax.ejb.Timer"; //$NON-NLS-1$
+ private static final String JAKARTA_EJB_TIMER = "jakarta.ejb.Timer"; //$NON-NLS-1$
private static final String TIMER = "Timer"; //$NON-NLS-1$
private static final String RETAIN_IF_EXCEPTION = "retainIfException"; //$NON-NLS-1$
private static final String REMOVE = "Remove"; //$NON-NLS-1$
@@ -82,11 +83,15 @@
private static final String NAME = "name"; //$NON-NLS-1$
private static final String VOID_RETURN_TYPE = "V"; //$NON-NLS-1$
private static final String JAVAX_EJB_STATEFUL = "javax.ejb.Stateful"; //$NON-NLS-1$
+ private static final String JAKARTA_EJB_STATEFUL = "jakarta.ejb.Stateful"; //$NON-NLS-1$
private static final String JAVAX_EJB_SINGLETON = "javax.ejb.Singleton"; //$NON-NLS-1$
+ private static final String JAKARTA_EJB_SINGLETON = "jakarta.ejb.Singleton"; //$NON-NLS-1$
private static final String STATEFUL = "Stateful"; //$NON-NLS-1$
private static final String JAVAX_EJB_MESSAGE_DRIVEN = "javax.ejb.MessageDriven"; //$NON-NLS-1$
+ private static final String JAKARTA_EJB_MESSAGE_DRIVEN = "jakarta.ejb.MessageDriven"; //$NON-NLS-1$
private static final String MESSAGE_DRIVEN = "MessageDriven"; //$NON-NLS-1$
private static final String JAVAX_EJB_STATELESS = "javax.ejb.Stateless"; //$NON-NLS-1$
+ private static final String JAKARTA_EJB_STATELESS = "jakarta.ejb.Stateless"; //$NON-NLS-1$
private static final String STATELESS = "Stateless"; //$NON-NLS-1$
private static final String SINGLETON = "Singleton"; //$NON-NLS-1$
@@ -115,16 +120,16 @@
Result result = new Result();
for (IAnnotation annotation : type.getAnnotations()) {
String annotationName = annotation.getElementName();
- if (STATELESS.equals(annotationName) || JAVAX_EJB_STATELESS.equals(annotationName)) {
+ if (STATELESS.equals(annotationName) || JAVAX_EJB_STATELESS.equals(annotationName) || JAKARTA_EJB_STATELESS.equals(annotationName)) {
processStatelessBean(result, annotation, type);
break;
- } else if (MESSAGE_DRIVEN.equals(annotationName) || JAVAX_EJB_MESSAGE_DRIVEN.equals(annotationName)) {
+ } else if (MESSAGE_DRIVEN.equals(annotationName) || JAVAX_EJB_MESSAGE_DRIVEN.equals(annotationName) || JAKARTA_EJB_MESSAGE_DRIVEN.equals(annotationName)) {
processMessageDrivenBean(result, annotation, type);
break;
- } else if (STATEFUL.equals(annotationName) || JAVAX_EJB_STATEFUL.equals(annotationName)) {
+ } else if (STATEFUL.equals(annotationName) || JAVAX_EJB_STATEFUL.equals(annotationName) || JAKARTA_EJB_STATEFUL.equals(annotationName)) {
processStatefulBean(result, annotation, type);
break;
- } else if (SINGLETON.equals(annotationName) || JAVAX_EJB_SINGLETON.equals(annotationName)) {
+ } else if (SINGLETON.equals(annotationName) || JAVAX_EJB_SINGLETON.equals(annotationName) || JAKARTA_EJB_SINGLETON.equals(annotationName)) {
processSingletonBean(result, annotation, type);
break;
}
@@ -557,7 +562,7 @@
if (method.getNumberOfParameters() != 1)
return;
String paramName = Signature.toString(method.getParameterTypes()[0]);
- if (!TIMER.equals(paramName) && !JAVAX_EJB_TIMER.equals(paramName))
+ if (!TIMER.equals(paramName) && !JAVAX_EJB_TIMER.equals(paramName) && !JAKARTA_EJB_TIMER.equals(paramName))
return;
if (method.getExceptionTypes().length != 0)
return;
diff --git a/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebAnnotationFactory.java b/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebAnnotationFactory.java
index bd0ee75..f09b796 100644
--- a/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebAnnotationFactory.java
+++ b/plugins/org.eclipse.jst.jee.web/web/org/eclipse/jst/jee/model/internal/WebAnnotationFactory.java
@@ -62,12 +62,15 @@
private static final String WEB_SERVLET = "WebServlet"; //$NON-NLS-1$
private static final String WEB_SERVLET_FQ = "javax.servlet.annotation.WebServlet"; //$NON-NLS-1$
+ private static final String WEB_SERVLET_FQ_JAKARTA = "jakarta.servlet.annotation.WebServlet"; //$NON-NLS-1$
private static final String WEB_LISTENER = "WebListener"; //$NON-NLS-1$
private static final String WEB_LISTENER_FQ = "javax.servlet.annotation.WebListener"; //$NON-NLS-1$
+ private static final String WEB_LISTENER_FQ_JAKARTA = "jakarta.servlet.annotation.WebListener"; //$NON-NLS-1$
private static final String WEB_FILTER = "WebFilter"; //$NON-NLS-1$
private static final String WEB_FILTER_FQ = "javax.servlet.annotation.WebFilter"; //$NON-NLS-1$
+ private static final String WEB_FILTER_FQ_JAKARTA = "jakarta.servlet.annotation.WebFilter"; //$NON-NLS-1$
@@ -129,7 +132,7 @@
String filterName = (String) getAnnotatedValue(FILTER_NAME, memberValuePairs);
String descr = (String) getAnnotatedValue(DESCRIPTION, memberValuePairs);
Boolean async = (Boolean) getAnnotatedValue(ASYNC_SUPPORTED, memberValuePairs);
- if(WEB_SERVLET.equals(annotationName) || WEB_SERVLET_FQ.equals(annotationName)){
+ if(WEB_SERVLET.equals(annotationName) || WEB_SERVLET_FQ.equals(annotationName) || WEB_SERVLET_FQ_JAKARTA.equals(annotationName)){
Servlet servlet = (Servlet)artifact;
if (name != null) {
servlet.setServletName(name);
@@ -146,7 +149,7 @@
}
processUrlMapping(result, annotation, servlet);
- } else if(WEB_FILTER.equals(annotationName) || WEB_FILTER_FQ.equals(annotationName)){
+ } else if(WEB_FILTER.equals(annotationName) || WEB_FILTER_FQ.equals(annotationName) || WEB_FILTER_FQ_JAKARTA.equals(annotationName)){
Filter filter = (Filter)artifact;
if (filterName != null) {
filter.setFilterName(filterName);
@@ -163,7 +166,7 @@
}
processUrlMapping(result, annotation, filter);
- } else if(WEB_LISTENER.equals(annotationName) || WEB_LISTENER_FQ.equals(annotationName)){
+ } else if(WEB_LISTENER.equals(annotationName) || WEB_LISTENER_FQ.equals(annotationName) || WEB_LISTENER_FQ_JAKARTA.equals(annotationName)){
Listener listener = (Listener)artifact;
Description description = JavaeeFactory.eINSTANCE.createDescription();
if(listener.getListenerClass() == null){