User login

Axis2 - Eclipse Plugin problems

Forums :

Hello all,

First, I just want to say that I am new to WebServices, and specifically the Axis2-Eclipse pugin.  Here is what I want:

I want to expose MSExchange's WebServices and use them to do my bidding...  I assume that the plugin will generate an api that will communicate with the Exchange WS, once I provide it the wsdl file from MS.  NP so far.  Here is the top of said wsdl file...

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:s="http://www.w3.org/2001/XMLSchema" targetNamespace="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
    <wsdl:types>
        <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
            <xs:import namespace="http://schemas.microsoft.com/exchange/services/2006/messages" schemaLocation="messages.xsd"/>
        </xs:schema>
    </wsdl:types>
...

My problem is when the plugin tries to do what it does, it cannot find messages.xsd, which consiquiently references another xs:import.  I have all three of these resources (Services.wsdl, messages.xsd, types.xsd) located in my project root.  Where do they need to be for the pluging to find them and be happy?  I have referenced the wsdl file locally and remotely via ssl and basic auth.  Please help... 

Thanks in advance,

- Joe Valerio

 

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Took some time, but here are the results

OK, so it wasn't a path thing, it was a wsdl thing.  The MS Exchange wsdl file does not define a service tag, so adding the following at the end of the wsdl file got things to work...

  <wsdl:service name="ExchangeServices">
      <wsdl:port name="ExchangeServicePort" binding="tns:ExchangeServiceBinding">
        <soap:address location="${your.exchange.server}"/>
      </wsdl:port>
  </wsdl:service>

To make Axis2 happy, I also had to add xml:lang attributes to the root tag.  After all this I found that Axis2 creates a monolithic stub for the service.  Great for small services, bad for exchange.  288,000+ lines in one file kind of makes Eclipse go nuts, so I'm gonna try to use jaxws, since it breaks up the objects...

Hope this helps some random wanderer that wants to use Exchange WS's...

- Joe Valerio

Yale University

RE : Took some time, but here are the results

Hi Joe,

Grest to here that yo u got it through. One more note as you have mentioned about the monolithic stubs. Axis2 Eclipse Plugins yet to support the unpacking parameter of the axis2 codegen option that is now available on command line wsdl2java. It will be supported on the next release of the Axis2 (parallel hapenning plugin releases). One more thing all these efficient tools will be available on WSO2 Web Serices Applicatoin Server (WSAS) 2.1 release will be due in weeks time with the Eclipse WTP IDE integration, if you could try that one http://wso2.com/products/wsas/

Thanks

Lahiru

More detail will be appreciated

Hello all

I got the same question with you  but i got  no idea of how to deal with .More details are needed.How to modify the messages.xsd Types.xsd,Services.wsdl, and how to use jaxws. I have try this on JBuilder 2007 ,and the gernerated codes are not well ,and some counstractors lost .I do not konw why ? Eclipse Plugin with Axis 2.0 will give message.xsd error.

Thanks in advance

Neil

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.