axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "F Chew" <>
Subject WSIF - Method Not Found, Calling .Net Webservice
Date Wed, 07 Jan 2004 06:16:40 GMT
Hi there.
I am trying to invoke a .Net webservice using WSIF but encountered a "Method 
was not found" error below:
F:\Apache\wsif-2.0>java org.tempuri.Run
- WSIF0006W: Multiple WSIFProvider found supporting the same namespace URI 
''. Found 
- WSIF0007I: Using WSIFProvider 
for namespaceURI ''
Error while executing sample, received an exception from WSIF; details:
org.apache.wsif.WSIFException: Method getServiceDtls(class java.lang.String) 
was not found in portType {}ServiceSoap
org.apache.wsif.base.WSIFClientProxy.findMatchingOperation(Unknown Source)
        at org.apache.wsif.base.WSIFClientProxy.invoke(Unknown Source)
        at $Proxy0.getServiceDtls(Unknown Source)
        at org.tempuri.Run.main(

Not sure if you could help but to give you some background, I have extracted 
some code from my application in the sections below.

My is written similar to the sample in the WSIF 
website as follows:
package org.tempuri;

import org.apache.wsif.WSIFService;
import org.apache.wsif.WSIFServiceFactory;
import org.apache.wsif.WSIFException;
import java.rmi.RemoteException;

import org.tempuri.ServiceSoap;

public class Run {

    public static void main(String[] args) {
        try {

            // create a service factory
            WSIFServiceFactory factory = WSIFServiceFactory.newInstance();

            // parse WSDL
            WSIFService service =

            // create the stub
            ServiceSoap stub =
                    (ServiceSoap) service.getStub(

            // do the invocation
            ServiceDtlsResult ret = stub.getServiceDtls("91234567");

} catch (WSIFException we) {
                "Error while executing sample, received an exception from 
WSIF; details:");
        } catch (RemoteException re) {
                "Error while executing sample, received an exception due to 
remote invocation; details:");

The interface file generated by Axis WSDL2Java is as 
* This file was auto-generated from WSDL
* by the Apache Axis WSDL2Java emitter.

package org.tempuri;

public interface ServiceSoap extends java.rmi.Remote {
    public org.tempuri.ServiceDtlsResult getServiceDtls(java.lang.String 
sService) throws java.rmi.RemoteException;
    public org.tempuri.ServiceComponentResult 
getServiceComponents(java.lang.String sService) throws 
    public org.tempuri.StandardStringResult 
validateCustIdNDOBWithService(java.lang.String sService, java.lang.String 
sCustID, java.lang.String sCustIDType, java.lang.String sDOB) throws 

The webservice's sample SOAP request is as follows:
POST /niftyws/service.asmx HTTP/1.1
Host: ma4is_win2003
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: ""

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="" 
    <GetServiceDtls xmlns="">

A discrepancy I see is that the first letter for the method 
getServiceDtls(class java.lang.String), i.e. 'g', is  different from that of 
the tag <GetServiceDtls xmlns="">, i.e. 'G',  in the soap 
request document.
I'm not sure if this is the problem.
Appreciate any advice.

Fabian Chew.

Keep track of Singapore & Malaysia stock prices.

View raw message