Community
Participate
Working Groups
We are trying to extend the WTP Web Services Wizard to add support for WebLogic. We would like the service to be generated in a non (WTP) Dynamic Web Project (J2EE Web Project earlier). This project would have a component with module type other than "jst.web" (e.g. "bea.web"). But the dependency of WTP on "jst.web" and "jst.ear" is creating problems. If the serviceType extension specifies the buModuleTypesInclude, tdModuleTypesInclude to be "bea.web" then the wizard fails at many places. Few of them are - 1. org.eclipse.jst.ws.internal.creation.ui.widgets.runtime.ServerRuntimeSelectionWi dget.getStatus()#354 if (!isEJBRequired && serviceComponentName!=null && serviceComponentName.length()>0 && !J2EEUtils.isWebComponent(serviceProj, serviceComponentName)) { finalStatus = new SimpleStatus("",msgUtils_.getMessage ("MSG_INVALID_WEB_PROJECT",new String[]{serviceProjName}),Status.ERROR); } This has a direct dependency on "jst.web" 2. If a new module type (other than "jst.*" is used) then in PreServiceDevelopCommand.convertModuleType() -1 is assigned to intModuleType 3. At CreateModuleCommand.execute()#105 a module type value of -1 throws error 4. If I skip (1) then the following excpetion comes up (this might be due to the kind of project I am using, but still a descriptive error should be thrown and now an exception) IWAB0014E Unexpected exception occured. null java.lang.NullPointerException at org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent.getRefe rences(VirtualComponent.java:186) at org.eclipse.wst.common.componentcore.internal.operation.CreateReferenceComponent sOp.addReferencedComponents(CreateReferenceComponentsOp.java:58) at org.eclipse.wst.common.componentcore.internal.operation.CreateReferenceComponent sOp.execute(CreateReferenceComponentsOp.java:30) at org.eclipse.jst.j2ee.application.internal.operations.AddComponentToEnterpriseApp licationOp.execute(AddComponentToEnterpriseApplicationOp.java:34) at org.eclipse.wst.common.frameworks.internal.datamodel.ExtendableOperationImpl.doE xecute(ExtendableOperationImpl.java:129) at org.eclipse.wst.common.frameworks.internal.datamodel.ExtendableOperationImpl$1.r un(ExtendableOperationImpl.java:109) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1719) at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:1739) at org.eclipse.wst.common.frameworks.internal.datamodel.ExtendableOperationImpl.exe cute(ExtendableOperationImpl.java:115) at org.eclipse.jst.ws.internal.common.J2EEUtils.associateComponentToEAR (J2EEUtils.java:1622) at org.eclipse.jst.ws.internal.consumption.command.common.AssociateModuleWithEARCom mand.execute(AssociateModuleWithEARCommand.java:41) at org.eclipse.jst.ws.internal.creation.ui.extension.PreServiceAssembleCommand.exec ute(PreServiceAssembleCommand.java:62) at org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentEngine.runComm and(CommandFragmentEngine.java:335) at org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentEngine.visitTo p(CommandFragmentEngine.java:301) at org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentEngine.moveFor wardToNextStop(CommandFragmentEngine.java:217) at org.eclipse.wst.command.internal.env.ui.widgets.SimpleCommandEngineManager$4.run (SimpleCommandEngineManager.java:208) at org.eclipse.jface.operation.ModalContext.runInCurrentThread (ModalContext.java:346) at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:291) at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:830) at org.eclipse.wst.command.internal.env.ui.widgets.SimpleCommandEngineManager.runFo rwardToNextStop(SimpleCommandEngineManager.java:177) at org.eclipse.wst.command.internal.env.ui.widgets.WizardPageManager.runForwardToNe xtStop(WizardPageManager.java:80) at org.eclipse.wst.command.internal.env.ui.widgets.WizardPageManager.getNextPage (WizardPageManager.java:119) at org.eclipse.wst.command.internal.env.ui.widgets.SimpleWizardPage.getNextPage (SimpleWizardPage.java:120) at org.eclipse.jface.wizard.WizardDialog.nextPressed (WizardDialog.java:747) at org.eclipse.jface.wizard.WizardDialog.buttonPressed (WizardDialog.java:345) at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:556) at org.eclipse.swt.widgets.TypedListener.handleEvent (TypedListener.java:89) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:844) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3058) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2691) at org.eclipse.jface.window.Window.runEventLoop(Window.java:809) (More assupmtions/problems to be added to the description) Can the WTP Web Services Wizard be made dynamic enough to support user defined module types?
It should be possible to configure the wizards to support arbitrary module types, although it's a change we will have to consider after WTP 0.7 since the time to tackle it before WTP 0.7 pretty much doesn't exist. Targetting to M8.
Created attachment 26340 [details] apply to org.eclipse.jst.ws.consumption.ui patch 1 of 2
Created attachment 26341 [details] apply to org.eclipse.jst.ws.creation.ui patch 2 of 2
The attached patches are ready to be committed. They fix ServerRuntimeSelectionWidget so that it no longer requires components of type "jst.ejb" or "jst.web" (item 1 in the opening description). I've opened enhancement 106785 to address the remaining problem of not having an appropriate label for an arbitrary compoenent type. To address the component creation problems identified in 2 and 3, I've opened enhancement 106781. The exception in 4 looks like something that was fixed earlier (see bug 103401). Please note that this pile of code will likely be changing again in WTP 1.0 and we redesign the Web service framework to take "features" into account.
Patch committed and released as v20050823_1620. Please resolve the defect.
Resolving as fixed per Kathy's comments.
Verified on behalf of submitter (Neeraj) to the best of our knowledge. This was fixed over a year ago.
Closed.