### Eclipse Workspace Patch 1.0 #P org.eclipse.jst.ws.axis2.ui Index: src/org/eclipse/jst/ws/internal/axis2/consumption/ui/preferences/Axis2RuntimePreferencePage.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.ui/src/org/eclipse/jst/ws/internal/axis2/consumption/ui/preferences/Axis2RuntimePreferencePage.java,v retrieving revision 1.13 diff -u -r1.13 Axis2RuntimePreferencePage.java --- src/org/eclipse/jst/ws/internal/axis2/consumption/ui/preferences/Axis2RuntimePreferencePage.java 19 Jun 2008 03:51:02 -0000 1.13 +++ src/org/eclipse/jst/ws/internal/axis2/consumption/ui/preferences/Axis2RuntimePreferencePage.java 7 Mar 2009 11:32:39 -0000 @@ -25,6 +25,7 @@ * 20070827 188732 sandakith@wso2.com - Lahiru Sandakith, Restore defaults for preferences * 20071030 207618 zina@ca.ibm.com - Zina Mostafia, Page GUI sequence using tab is not correct ( violates Accessibility) * 20080522 233154 samindaw@wso2.com - Saminda Wijeratne, UI rendering problem where textboxes used as labels had white background + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.internal.axis2.consumption.ui.preferences; @@ -284,11 +285,19 @@ { Axis2EmitterContext context = WebServiceAxis2CorePlugin.getDefault().getAxisEmitterContext(); - String[] databindingItems = {context.getServiceDatabinding().toUpperCase()}; + String[] databindingItems = {Axis2Constants.DATA_BINDING_ADB,Axis2Constants.DATA_BINDING_XMLBEANS}; serviceDatabindingCombo.setItems(databindingItems); - serviceDatabindingCombo.select(0); + int selected = serviceDatabindingCombo.indexOf(context.getServiceDatabinding().toUpperCase()); + if (selected==-1) + serviceDatabindingCombo.select(0); + else + serviceDatabindingCombo.select(selected); clientDatabindingCombo.setItems(databindingItems); - clientDatabindingCombo.select(0); + selected = clientDatabindingCombo.indexOf(context.getClientDatabinding().toUpperCase()); + if (selected==-1) + clientDatabindingCombo.select(0); + else + clientDatabindingCombo.select(selected); generateServerSideInterfaceCheckBoxButton.setSelection( context.isServiceInterfaceSkeleton()); generateAllCheckBoxButton.setSelection(context.isServiceGenerateAll()); #P org.eclipse.jst.ws.axis2.core Index: src/org/eclipse/jst/ws/axis2/core/utils/Axis2CoreUtils.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.core/src/org/eclipse/jst/ws/axis2/core/utils/Axis2CoreUtils.java,v retrieving revision 1.6 diff -u -r1.6 Axis2CoreUtils.java --- src/org/eclipse/jst/ws/axis2/core/utils/Axis2CoreUtils.java 15 Oct 2008 14:47:21 -0000 1.6 +++ src/org/eclipse/jst/ws/axis2/core/utils/Axis2CoreUtils.java 7 Mar 2009 11:32:41 -0000 @@ -16,6 +16,7 @@ * 20070824 200515 sandakith@wso2.com - Lahiru Sandakith, NON-NLS move to seperate file * 20080625 210817 samindaw@wso2.com - Saminda Wijeratne, Setting the proxyBean and proxyEndPoint values - Refactoring * 20080924 247929 samindaw@wso2.com - Saminda Wijeratne, source folder not correctly set + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.axis2.core.utils; @@ -28,11 +29,14 @@ import java.net.URL; import java.util.ArrayList; import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; +import org.eclipse.core.resources.IFolder; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; @@ -54,6 +58,30 @@ private static boolean alreadyComputedTempAxis2Directory = false; private static String tempAxis2Dir = null; + public static void addResourcesFolderAsClassPath(IProject project){ + try { + IJavaProject javaProject = (IJavaProject)project.getNature(JavaCore.NATURE_ID); + IClasspathEntry[] rawClasspath = javaProject.getRawClasspath(); + List list = new LinkedList(java.util.Arrays.asList(rawClasspath)); + String resourceName = "resources"; + IFolder resourcesFolder = project.getFolder(resourceName); + boolean isAlreadyAdded=false; + for(IClasspathEntry cpe:rawClasspath){ + isAlreadyAdded=cpe.getPath().toOSString().equals(resourcesFolder.getFullPath().toOSString()); + if (isAlreadyAdded) break; + } + if (!isAlreadyAdded){ + IClasspathEntry jarEntry = JavaCore.newLibraryEntry(resourcesFolder.getFullPath(),null,null); + list.add(jarEntry); + } + IClasspathEntry[] newClasspath = (IClasspathEntry[])list.toArray(new IClasspathEntry[0]); + javaProject.setRawClasspath(newClasspath,null); + } catch (CoreException e) { + e.printStackTrace(); + } + + } + public static String tempAxis2Directory() { if (!alreadyComputedTempAxis2Directory){ String[] nodes = {Axis2Constants.DIR_DOT_METADATA, Index: src/org/eclipse/jst/ws/axis2/core/constant/Axis2Constants.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.core/src/org/eclipse/jst/ws/axis2/core/constant/Axis2Constants.java,v retrieving revision 1.5 diff -u -r1.5 Axis2Constants.java --- src/org/eclipse/jst/ws/axis2/core/constant/Axis2Constants.java 19 Jun 2008 03:50:59 -0000 1.5 +++ src/org/eclipse/jst/ws/axis2/core/constant/Axis2Constants.java 7 Mar 2009 11:32:40 -0000 @@ -14,6 +14,7 @@ * 20071029 206967 sandakith@wso2.com - Lahiru Sandakith * 20080521 231098 sandakith@wso2.com - Lahiru Sandakith, Fix for Axis2 1.4 dependency chenge * 20080604 193371 samindaw@wso2.com - Saminda Wijeratne, creating a function to validate services.xml + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.axis2.core.constant; @@ -61,6 +62,7 @@ public static final String AXIS2_PROJECT="org.eclipse.jst.ws.axis2"; //$NON-NLS-1$ public static final String CODEGEN_RESULTS="codegen"; //$NON-NLS-1$ public static final String DATA_BINDING_ADB="ADB"; //$NON-NLS-1$ + public static final String DATA_BINDING_XMLBEANS="XMLBEANS"; //$NON-NLS-1$ public static final String DATA_BINDING_NONE="NONE"; //$NON-NLS-1$ public static final String SKELETON_SUFFIX="Skeleton.java"; //$NON-NLS-1$ public static final String RESOURCE_FOLDER="resources"; //$NON-NLS-1$ @@ -91,7 +93,8 @@ "annogen", "backport-util", "mex-impl", - "mail" + "mail", + "xmlbeans" }; } #P org.eclipse.jst.ws.axis2.consumption.core Index: src/org/eclipse/jst/ws/axis2/consumption/core/command/Axis2ClientCodegenCommand.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.consumption.core/src/org/eclipse/jst/ws/axis2/consumption/core/command/Axis2ClientCodegenCommand.java,v retrieving revision 1.11 diff -u -r1.11 Axis2ClientCodegenCommand.java --- src/org/eclipse/jst/ws/axis2/consumption/core/command/Axis2ClientCodegenCommand.java 15 Oct 2008 14:47:24 -0000 1.11 +++ src/org/eclipse/jst/ws/axis2/consumption/core/command/Axis2ClientCodegenCommand.java 7 Mar 2009 11:32:42 -0000 @@ -22,6 +22,7 @@ * 20080621 200069 samindaw@wso2.com - Saminda Wijeratne, saving the retrieved WSDL so no need to retrieve it again * 20080616 237363 samindaw@wso2.com - Saminda Wijeratne, get ResourceContext from environment instead of preference * 20080924 247929 samindaw@wso2.com - Saminda Wijeratne, source folder not correctly set + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.axis2.consumption.core.command; @@ -31,6 +32,8 @@ import java.util.Map; import org.eclipse.core.commands.ExecutionException; +import org.eclipse.core.resources.IFolder; +import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.core.runtime.IProgressMonitor; @@ -224,7 +227,12 @@ currentDynamicWebProjectDir, monitor, statusHandler); - + + IProject project = FacetContainerUtils.getProjectName(model.getWebProjectName()); + IFolder folder = project.getFolder("resources"); + if (folder.exists()){ + Axis2CoreUtils.addResourcesFolderAsClassPath(project); + } } catch (Exception e) { status = StatusUtils.errorStatus(NLS.bind( Axis2ConsumptionUIMessages.ERROR_CODEGEN_EXCEPTION, @@ -244,5 +252,5 @@ return status; } - + } #P org.eclipse.jst.ws.axis2.creation.core Index: src/org/eclipse/jst/ws/axis2/creation/core/command/Axis2WSDL2JavaCommand.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.creation.core/src/org/eclipse/jst/ws/axis2/creation/core/command/Axis2WSDL2JavaCommand.java,v retrieving revision 1.11 diff -u -r1.11 Axis2WSDL2JavaCommand.java --- src/org/eclipse/jst/ws/axis2/creation/core/command/Axis2WSDL2JavaCommand.java 15 Oct 2008 14:47:28 -0000 1.11 +++ src/org/eclipse/jst/ws/axis2/creation/core/command/Axis2WSDL2JavaCommand.java 7 Mar 2009 11:32:44 -0000 @@ -21,6 +21,7 @@ * 20080621 200069 samindaw@wso2.com - Saminda Wijeratne, saving the retrieved WSDL so no need to retrieve it again * 20080616 237363 samindaw@wso2.com - Saminda Wijeratne, get ResourceContext from environment instead of preference * 20080924 247929 samindaw@wso2.com - Saminda Wijeratne, source folder not correctly set + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.axis2.creation.core.command; @@ -30,6 +31,8 @@ import java.util.Map; import org.eclipse.core.commands.ExecutionException; +import org.eclipse.core.resources.IFolder; +import org.eclipse.core.resources.IProject; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IStatus; @@ -209,7 +212,11 @@ monitor, statusHandler); - + IProject project = FacetContainerUtils.getProjectName(model.getWebProjectName()); + IFolder folder = project.getFolder("resources"); + if (folder.exists()){ + Axis2CoreUtils.addResourcesFolderAsClassPath(project); + } } catch (Exception e) { status = StatusUtils.errorStatus(NLS.bind( Axis2CreationUIMessages.ERROR_CODEGEN_EXCEPTION, @@ -230,5 +237,4 @@ return status; } - } #P org.eclipse.jst.ws.axis2.consumption.ui Index: src/org/eclipse/jst/ws/internal/axis2/consumption/ui/widgets/Axis2ProxyWidget.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.consumption.ui/src/org/eclipse/jst/ws/internal/axis2/consumption/ui/widgets/Axis2ProxyWidget.java,v retrieving revision 1.9 diff -u -r1.9 Axis2ProxyWidget.java --- src/org/eclipse/jst/ws/internal/axis2/consumption/ui/widgets/Axis2ProxyWidget.java 16 Jul 2008 23:52:23 -0000 1.9 +++ src/org/eclipse/jst/ws/internal/axis2/consumption/ui/widgets/Axis2ProxyWidget.java 7 Mar 2009 11:32:46 -0000 @@ -20,6 +20,7 @@ * 20071030 207618 zina@ca.ibm.com - Zina Mostafia, Page GUI sequence using tab is not correct ( violates Accessibility) * 20080319 207616 makandre@ca.ibm.com - Andrew Mak, Table in Axis2 Web Service Skeleton Java Bean Configuration Page not Accessible * 20080621 200069 samindaw@wso2.com - Saminda Wijeratne, saving the retrieved WSDL so no need to retrieve it again + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.internal.axis2.consumption.ui.widgets; @@ -136,7 +137,6 @@ // Databinding databindingTypeCombo = uiUtils.createCombo(topComp, Axis2ConsumptionUIMessages.LABEL_DATABINDING_CAPTION, null, null, SWT.READ_ONLY); fillDatabinderCombo(); - databindingTypeCombo.select(0); databindingTypeCombo.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { model.setDatabindingType(databindingTypeCombo.getText()); @@ -389,8 +389,13 @@ */ private void fillDatabinderCombo() { databindingTypeCombo.add(Axis2Constants.DATA_BINDING_ADB); + databindingTypeCombo.add(Axis2Constants.DATA_BINDING_XMLBEANS); databindingTypeCombo.add(Axis2Constants.DATA_BINDING_NONE); - databindingTypeCombo.select(0); + int selected = databindingTypeCombo.indexOf(context.getClientDatabinding().toUpperCase()); + if (selected==-1) + databindingTypeCombo.select(0); + else + databindingTypeCombo.select(selected); } private void populateModel() { #P org.eclipse.jst.ws.axis2.creation.ui Index: src/org/eclipse/jst/ws/internal/axis2/creation/ui/widgets/skeleton/WSDL2JAVASkelConfigWidget.java =================================================================== RCS file: /cvsroot/webtools/webservices/plugins/org.eclipse.jst.ws.axis2.creation.ui/src/org/eclipse/jst/ws/internal/axis2/creation/ui/widgets/skeleton/WSDL2JAVASkelConfigWidget.java,v retrieving revision 1.8 diff -u -r1.8 WSDL2JAVASkelConfigWidget.java --- src/org/eclipse/jst/ws/internal/axis2/creation/ui/widgets/skeleton/WSDL2JAVASkelConfigWidget.java 16 Jul 2008 23:52:28 -0000 1.8 +++ src/org/eclipse/jst/ws/internal/axis2/creation/ui/widgets/skeleton/WSDL2JAVASkelConfigWidget.java 7 Mar 2009 11:32:47 -0000 @@ -18,6 +18,7 @@ * 20070824 200515 sandakith@wso2.com - Lahiru Sandakith, NON-NLS move to seperate file * 20080319 207616 makandre@ca.ibm.com - Andrew Mak, Table in Axis2 Web Service Skeleton Java Bean Configuration Page not Accessible * 20080621 200069 samindaw@wso2.com - Saminda Wijeratne, saving the retrieved WSDL so no need to retrieve it again + * 20090307 196954 samindaw@wso2.com - Saminda Wijeratne, Support XMLBeans data binding *******************************************************************************/ package org.eclipse.jst.ws.internal.axis2.creation.ui.widgets.skeleton; @@ -148,7 +149,6 @@ databindingTypeCombo = new Combo(mainComp, SWT.DROP_DOWN | SWT.BORDER | SWT.READ_ONLY); databindingTypeCombo.setLayoutData(gd); fillDatabinderCombo(); - databindingTypeCombo.select(0); databindingTypeCombo.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { model.setDatabindingType(databindingTypeCombo.getText()); @@ -457,8 +457,13 @@ */ private void fillDatabinderCombo() { databindingTypeCombo.add(Axis2Constants.DATA_BINDING_ADB); + databindingTypeCombo.add(Axis2Constants.DATA_BINDING_XMLBEANS); databindingTypeCombo.add(Axis2Constants.DATA_BINDING_NONE); - databindingTypeCombo.select(0); + int selected = databindingTypeCombo.indexOf(context.getServiceDatabinding().toUpperCase()); + if (selected==-1) + databindingTypeCombo.select(0); + else + databindingTypeCombo.select(selected); }