Hi,

I'm new to Axis. I got a simple service running in version 1.1.1. I'm using 
Spring and followed the guidelines at 
http://ws.apache.org/axis2/1_2/spring.html
for using it with a servlet context.

I've got the axis libraries and my classes all bundled in a web app, rather 
than deploying axis on its own and uploading aar files.

I tried changing the libraries in WEB-INF/lib to the version 1.2 ones. I was 
careful to upgrade the supporting libraries as well (e.g. XmlSchema.) Now when 
I try to run the application, I get a class cast exception:

2007-05-11 10:55:12,675 INFO  org.apache.axis2.deployment.ServiceDeployer - The 
sso.aar service, which is not valid, caused java.lang.ClassCastException
        at 
org.apache.axis2.deployment.DeploymentEngine.fillServiceGroup(DeploymentEngine.java:498)
        at 
org.apache.axis2.deployment.DeploymentEngine.addServiceGroup(DeploymentEngine.java:437)
        at 
org.apache.axis2.deployment.ServiceDeployer.deploy(ServiceDeployer.java:83)
        at 
org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:582)
etc.

DeploymentEngine.java lines 493-499 are:

            for (Iterator iterator = axisService.getOperations(); 
iterator.hasNext();) {
                AxisOperation opDesc = (AxisOperation) iterator.next();
                ArrayList modules = opDesc.getModuleRefs();

                for (int i = 0; i < modules.size(); i++) {
error is here ->    String moduleName = (String) modules.get(i);
                    AxisModule module = axisConfig.getModule(moduleName);

Has anyone ever had a similar error?
Any hints would be greatly appreciated!

My services.xml contains:

    <service name="Authenticate" scope="application">
        <description>
            Publiservice Single Sign On
        </description>
        <messageReceivers>
            <messageReceiver 
                mep="http://www.w3.org/2004/08/wsdl/in-only";
                
class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
            <messageReceiver
                mep="http://www.w3.org/2004/08/wsdl/in-out";
                class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
        </messageReceivers>
        <parameter name="ServiceObjectSupplier" locked="false">
            
org.apache.axis2.extensions.spring.receivers.SpringServletContextObjectSupplier
        </parameter>
        <parameter name="SpringBeanName" 
locked="false">authenticateService</parameter>
        <operation name="authenticate">
            <messageReceiver 
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
        </operation>
    </service>

My applicationContext.xml (for spring) contains:

<beans>
    <!-- Configure spring to give a hook to axis2 without a ServletContext
    <bean id="applicationContext" 
          
class="org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder"/>
     -->
    <!-- Hibernate section -->
    <bean id="dataSource" 
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" 
value="oracle.jdbc.driver.OracleDriver"/>
        <property name="url" value="jdbc:oracle:thin:@parker:1521:d36bm"/>
        <property name="username" value="pubsso_webuser"/>
        <property name="password" value="blah"/>
    </bean>
    
    <bean id="sessionFactory" 
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="mappingResources">
            <list>
                
<value>ca/gc/publiservice/sso/model/generated/Application.hbm.xml</value>
                
<value>ca/gc/publiservice/sso/model/generated/Permission.hbm.xml</value>
                
<value>ca/gc/publiservice/sso/model/generated/Person.hbm.xml</value>
                
<value>ca/gc/publiservice/sso/model/generated/PersonRole.hbm.xml</value>
                
<value>ca/gc/publiservice/sso/model/generated/Role.hbm.xml</value>
            </list>
        </property>
        <property name="hibernateProperties">
            <props>
                <prop 
key="hibernate.dialect">org.hibernate.dialect.OracleDialect</prop>
                <prop 
key="hibernate.current_session_context_class">thread</prop>
            </props>
        </property>
    </bean>
    
    <bean id="dao" class="ca.gc.publiservice.sso.model.DAO">
        <property name="sessionFactory" ref="sessionFactory"/>
    </bean>
    
    <!-- Axis2 Web Service -->
    <bean id="authenticateService" 
class="ca.gc.publiservice.sso.ws.AuthenticateImpl">
        <property name="dao" ref="dao"/>
    </bean>    
</beans>

Many thanks
Michael Davis


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to