Announcement Announcement Module
Collapse
No announcement yet.
Spring, Tomcat, WS & newbie Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Spring, Tomcat, WS & newbie

    Hi,

    I just know Iím missing something simple in this my first spring program but after hours of frustration Iím just no closer. Would some kind individual take pity on me ? I'm using:
    • Tomcat 5.5
    • Spring 2.04
    • Spring-ws 1.0.3
    • Eclipse 3.3
    I see no errors in the Tomcat log files - even at Debug level. The problems I encounter are:
    Thank you,
    Greg

    spring-ws-servlet.xml:
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
       <bean id="endpointMapping" class="org.springframework.ws.server.endpoint.mapping.PayloadRootQNameEndpointMapping">
       	<property name="mappings">
       		<props>
       			<prop key="{http://localhost:8080/hedorah/services/schemas}UserLoginRequest">authenticationEndpoint</prop>
       		</props>
       	</property>
    
       	<property name="interceptors">
       		<list>
               <bean class="org.springframework.ws.server.endpoint.interceptor.PayloadLoggingInterceptor"/>
      		</list>
       	</property>
       </bean>
    
    	<bean id="authenticationEndpoint" class="com.gws.HedorahServices.AuthenticationEndpoint">
    		<constructor-arg ref="authenticationService" />
    	</bean>
    	
    	<bean id="authenticationService" class="com.gws.HedorahServices.impl.SimpleAuthenticationService">
    	</bean>
    
    	<bean id="authorization" class="org.springframework.ws.wsdl.wsdl11.DynamicWsdl11Definition">
    		<property name="builder">
    			<bean class="org.springframework.ws.wsdl.wsdl11.builder.XsdBasedSoap11Wsdl4jDefinitionBuilder">
    				<property name="schema" value="/WEB-INF/UserManagement/authentication.xsd"/>                                            
    				<property name="portTypeName" value="Hedorah"/>
    				<property name="locationUri" value="http://localhost:8080/hedorah/services/"/>
    			</bean>
    		</property>
    	</bean>
    AutenticationEndpoint.java
    Code:
    public class AuthenticationEndpoint extends AbstractJDomPayloadEndpoint
    {
    	private IAuthentication _service;
    	
    	public AuthenticationEndpoint (IAuthentication service)
    	{
    		_service = service;
    	}
    	
    	protected Element invokeInternal (Element requestElement)
    	{
    System.out.println ("inside invokeInternal: "+requestElement);
    		return (null);
    	}
    }
    authentication.xsd
    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
               xmlns:hd="http://localhost:8080/HedorahServices/schemas"
               targetNamespace="http://localhost:8080/HedorahServices/schemas"
               elementFormDefault="qualified"
               attributeFormDefault="unqualified">
    <xs:element name="UserLoginRequest">
    	<xs:complexType>
    		<xs:annotation>
    			<xs:documentation>
    				The top level element for User Management messages.
    			</xs:documentation>
    		</xs:annotation>
    		<xs:choice>
    			<xs:element name="userLoginRequest2"
    				type="hd:UserLoginRequestType" />
    		</xs:choice>
    	</xs:complexType>
    </xs:element>
    	<xs:complexType name="UserLoginRequestType">
    		<xs:sequence>
    			<xs:element name="login" type="xs:string" />
    			<xs:choice>
    				<xs:sequence>
    					<xs:element name="corporateCode" type="xs:string" />
    					<xs:element name="airline" type="xs:string"
    						minOccurs="0" />
    				</xs:sequence>
    				<xs:element name="airline" type="xs:string" />
    			</xs:choice>
    			<xs:element name="roleName" type="xs:string" minOccurs="0" />
    		</xs:sequence>
    	</xs:complexType>
    </xs:schema>

  • #2
    Assuming your MessageDispatcherServlet is mapped to /hedorah/services/ in web.xml, try /hedorah/services/authorization.wsdl. IIRC, the bean name of your WsdlDefinition is used as the filename for the WSDL file.

    Cheers, Dan

    Comment


    • #3
      Dan,

      Ah, that's what I was missing.

      Thanks,
      Greg

      Comment

      Working...
      X