Web Tools Platform 1.5.2 Release - New and Noteworthy for Web Services Tools



Highlights

Here are the highlights of the changes to the Web services tools since the WTP 1.0 release:

  • In WTP 1.5, the first 3 pages of the Web Service wizards had been combined. By using the scale setting slider on the left-hand side of the Web Service wizards, you can independently control how much of the J2EE life cycle you want to do with the Web service and Web service client. Valid scale settings for the service and client side are:
    • Develop
    • Assemble
    • Deploy
    • Install
    • Start
    • Test

    For example, to start the Web service and to test the Web service client, you would move the scales to the following:


    You could also use the hyperlinks under the Configuration group on the right-hand side to change the server, Web service runtime, project and EAR.

  • In WTP 1.5, the Apache Axis runtime JARs has been updated from Axis 1.2.1 to Axis 1.3
  • Aside from the items listed above, the focus in WTP 1.5.2 has been on fixing defects to improve on quality of the Web Services tools.

Tutorials


The following tutorials demonstrate functionality of the Web Services tools in the 1.0M9 release:

Known Problems


Please be aware of the following known problems when using the Web Services tools.  See the associated Bugzilla defect for further details.

  • Creating Web service or Web service client
    • 119508: When creating top-down Web service or Web service client, if you are entering an URI to a WSDL or WSIL document not in the workspace, make sure that the document is loaded and the table below the URI titled Select a WSDL is populated before proceeding with the wizard. Otherwise, you may get an error message Selection must be WSDL and the fields in the next page may be empty.
    • 118623: When creating Web service client, do not choose to generate Web service client proxy in the same Web project as the one containing the Web service since if you selected Overwrite file without warning, the generated Web service client proxy will overwrite the Web service implementation files contained in the Web service project.
    • 145857: The Web services wizard may produce an error during creation of a Web service if the name of the target Web project includes non-latin-1 characters. The problem occurs because the Web services code generators calculate HTTP URLs based on the project name, and non-Latin-1 characters are not permitted in HTTP URLs. To resolve this, use project names that contain only latin-1 characters.
    • 159458: You might get the following error when running through the Web service wizard if you delete the server runtime after you've created a server on that runtime or delete the sever adapter plugins:
      IWAB0014E Unexpected exception occured.
            java.lang.NullPointerException
            at
      org.eclipse.jst.ws.internal.consumption.ui.wsrt.WebServiceRuntimeExtensionUtils2.getAllServerFactoryIdsWithRuntimes(Unknown Source)
      Do not delete the server runtime after you have created a server. Delete the server first if you need to delete a server runtime. Also, do not use the same workspace if you have added or removed server adapters (such as by clicking on the "Don't see your server listed? Click here" link in the Server ->Installed runtimes preference page).
    • 159618: If you select a Web service or Web service client from the JSR-109 branch of the J2EE perspective and then launch the Web services wizard, several fields in the wizard may not be filled in correctly. You can select the correct server, runtime environment, project and EAR values by clicking the appropriate hyperlinks in the Web Services wizards.
    • 138502: The default server, runtime environment, project and EAR on the first page of the Web services wizards may change depending on what you select for the Web service type, Web service implementation, server and runtime. Ensure that all fields and configurations are what your Web service or client requires before clicking Next or Finish on the wizard.
    • 117924: When generating an Axis Web service client in a Java project with the option to test using the sample JSP enabled, you will receive an HTTP 500 internal server error in the result pane of the JSP. To eliminate this error, generate into a Web project instead of a Java project. Another alternative is to manually copy the Axis JARs into the WebContent/WEB-INF/lib directory of the Web project containing the sample JSP.
    • 159356: If you create an Axis Web service on a Tomcat server running on port other than 8080, you might run into problem deploying to Axis if the server has not been started or the module has not been associated with the server. You can avoid the problem by using the default port of 8080, starting the server, or associating the Web module with the server before running the Web service wizard.
    • 161426: When using the context menu in the JSR Web Services branch of the J2EE Project Explorer to create Web service, if you have select to Hide create Web service dialog in the Web Services Popup Dialog preference, you might run into an
      IWAB0014E Unexpected exception occured.
      org.eclipse.jst.j2ee.webservice.wsdd.internal.impl.ServiceImplBeanImpl
      incompatible with java.lang.String
            java.lang.ClassCastException:
      
      To avoid the problem, do not hide the popup dialog or use the Web Service wizard instead of the context menu.
    • 162288: When creating top-down Web service in a workspace with space in the path, the wizard would not launch the Java Editor on the skeleton implementation file. You will need to manually open the editor on the skeleton implementation file which has the naming convention of Impl.java.
    • 161589: When creating a top-down Web service, if the service definition is blank, you click Browse and then Cancel, you might get the following error:
      IWAB0014E Unexpected exception occured.
            java.lang.NullPointerException
            at
      org.eclipse.jst.ws.internal.creation.ui.extension.PreServiceDevelopCommand.execute(PreServiceDevelopCommand.java:113)
      
      To avoid the problem, select a valid WSDL in the Browse dialog rather than clicking Cancel.
    • 160497: When accessing a HTTP basic authentication enabled WSDL using the Web Services wizard, the wizard prompts the user to enter the userid and password. This userid and password is being remembered for the duration of the workbench. To be able to enter a different userid or password, the workaround is to restart Eclipse.
  • Preference
    • 116025 130965 : The Web services Server Runtime preference page currently displays all server types in the "Server" combo box and all Web service runtimes in the "Web service runtime" combo box, instead of filtering them so that only compatible combinations appear. Also, the Web service runtime might change when a different server is picked. This means the user should check that the server and runtimes are what the user intented to choose and are valid combinations before applying the preference change.
  • Supported servers
    • 119964 : When creating Axis Web services on certain servers (such as Geronimo, JBoss or Tomcat running outside of the workspace), the server-config.wsdd file needed by the Axis runtime to determine what has been deployed is not persisted in the workspace. You will be able to invoke a Web service right after it is created but will get the error "Could not find the target service" after another Web service is deployed or in general after the project republishes. To resolve this problem, deploy the generated deploy.wsdd (this can be found in subdirectories under the WebContent/WEB-INF directory of the Web project) to Axis manually using the Axis AdminClient tool . Refer to "Using the AdminClient " section of the Axis 1.3 User's Guide for more detail.
  • Web Services Explorer
    • 92429: The Web Services Explorer does not work with the Netscape browser. Change the default Web Browser by using Window -> Preferences -> General -> Web Browser
    • 282413: When the Web Services Explorer loads WSDL files that use multiple inline schemas, warning messages will be generated for types that are referenced across these schemas. The warning message will be similar to: Reference of type <qualified_type_name> isn't resolved. These are warnings and not errors and will not interfere with the Web Services Explorer's ability to invoke operations, and therefore can be safely ignored.
    • 214876: When using the Web Services Explorer with the Private UDDI Registry, the Manage Publisher Assertion Form of a business node will not load in the following situations:
      • You are not logged in to the registry node containing the business node.
      • You are logged in to the registry node containing the business node, but the business node is not owned by the User ID/Password that is used to log in to the containing registry.
    • 257398: When attempting to publish a business, service or service interface to the XMethods UDDI Registry, you may get an error message regarding an "SSL Handshake Failure". XMethods UDDI registry should be used for discovery purposed only.
    • 132850: The Web Services Explorer does not support invocation of Web services via authenticating proxy servers that use a protocol other then HTTP Basic Authentication, such as NTLM. If the Web Services Explorer fails to connect to the chosen Web service for this or any other reason, it will display in its results pane the error IWAB0135E An unexpected error has occurred followed by information about the failure as retrieved from the HTTP response. To resolve this issue, switch to an HTTP Basic Authenticating proxy server.
    • 145615: Web Services Explorer has problems when switching from the source view to the form view when the schema uses choices containing sequences. If you are using a choice element in a complexType, the choice contains two or more elements including a sequence, and you switch from the form view to the source view, the Web Services Explorer may be unable to correctly convert the corresponding XML fragment in the source view back into the form view without losing data. To resolve this, invoke the sequence from the form view when the data is initially entered. When this configuration occurs, it is not recommended the source view be used. If the source view is used, do not switch back to the form view.
    • 150666: The Web Services Explorer imports WSDL without resolving relative import URLs. When using the Web Services Explorer, there is an issue when importing a WSDL from the WSDL Page to the workspace. If the option Import as a service reference to a WSIL document is chosen, this will refer to the original URL of the WSDL and therefore all relative imports will be reachable. If Import WSDL Document is chosen and the WSDL file contains relative imports these will no longer be reachable, leaving the copy of the WSDL difficult or impossible to process elsewhere in the tools. It is recommended that if there are relative imports in the WSDL you are importing the WSIL method should be used. If the there is a need for a copy of the WSDL a check for relative imports should be made manually after the import to resolve any broken links.
    • 161112: The Web Services Explorer cannot find business thru a proxy server that needs basic authentication.
    • 151174: Unpublished service interfaces show up after re-login in the Web Services Explorer. When a service interface (tModel) is unpublished, it is removed from the Publish Service Interface node, but after re-logging in to the UDDI registry the removed service interface is still listed. To resolve this, delete the interface again or ignore it.
    • 105089: The Web Service Explorer may run into error opening WSIL files containing Japanese characters. You might get an error indicating that the document "is not a valid WSIL URL or HTML URL" or corrupted characters in the Web Service Explorer WSIL page summary table.
    • 105087: The Web Service Explorer is unable to publish objects with non-English name.
    • 106239: When using the Web Services Explorer with the IBM UDDI Test Registry to add business assertions, you might get an error message stating that the business in not owned by you.
  • Web Services Ant Command line
    • 119964: The Web Services Ant tasks targetting the Axis runtime handle the generation of Web services, but not the deployment of them. As a result, Axis Web services created using the Ant tasks will not be reachable on the running server until you manually deploy your services using the Apache Axis native "AdminClient" utility. Deploy the generated deploy.wsdd (this can be found in subdirectories under the WebContent/WEB-INF directory of the Web project) to Axis manually using the Axis AdminClient tool . Refer to "Using the AdminClient " section of the Axis 1.3 User's Guide for more detail.
    • 159283: When generating a Web service or Web service client using Ant on the command line, and the target runtime supports EAR association, the created project will not be associated with the EAR project. This occurs if the EAR is initially empty, or when the EAR does not exist in the workspace at all. This results in validation errors against the EAR because it must have at least one associated module. The errors, which are seen in the wsgen.txt output file, looks like the following:
      *** ERROR ***: Thu Sep 28 15:11:14 EDT 2006    org.eclipse.emf.common.util.WrappedException:
      org.xml.sax.SAXParseException: cvc-complex-type.2.4.b: The content of element
      'application' is not complete. One of '{"http://java.sun.com/xml/ns/j2ee":display-name,
      "http://java.sun.com/xml/ns/j2ee":icon, "http://java.sun.com/xml/ns/j2ee":module}'
      is expected.
      

      To workaround the problem, associate the project to the EAR manually before running the Web Serive Ant command line.