Win a copy of Five Lines of Code this week in the OO, Patterns, UML and Refactoring forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Bear Bibeault
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Tim Cooke
  • Liutauras Vilda
  • Junilu Lacar
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • fred rosenberger
  • salvin francis
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Carey Brown

Web Service Failed to call binding provider

 
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have written web service example program using jboss as 7.0.2 Final profile. I want to add MAINTAIN_SESSION_PROPERTY to the client, but while casting to BindingProvider it generate the following exception
org.apache.cxf.calculator.CalculatorServiceSoapBindingStub cannot be cast to javax.xml.ws.BindingProvider

My Web Service Code is

import javax.jws.WebService;

import org.apache.cxf.calculator.CalculatorPortType;
import org.apache.cxf.calculator.types.CalculatorFault;

@WebService(serviceName = "CalculatorService",
portName = "CalculatorPort",
targetNamespace = "http://apache.org/cxf/calculator",
endpointInterface = "org.apache.cxf.calculator.CalculatorPortType"
)
public class CalculatorImpl implements CalculatorPortType {
public int add(int number1, int number2) throws AddNumbersFault {
if (number1 < 0 || number2 < 0) {
CalculatorFault fault = new CalculatorFault();
fault.setMessage("Negative number cant be added!");
fault.setFaultInfo("Numbers: " + number1 + ", " + number2);
throw new AddNumbersFault("Negative number cant be added!", fault);
}
return number1 + number2;
}

}


and client code is

public class CalculatorWSClient {
private static final QName SERVICE_1 =
new QName("http://apache.org/cxf/calculator", "CalculatorService");

private static final QName PORT_1 =
new QName("http://apache.org/cxf/calculator", "CalculatorPort");


public static void main(String[] args) throws MalformedURLException, CalculatorFault, RemoteException, ServiceException {

String endpointAddress =
"http://localhost:8080/CalculatorWS?wsdl";


CalculatorService calcService=new CalculatorServiceLocator(endpointAddress, SERVICE_1);
CalculatorPortType port=calcService.getCalculatorPort();
System.out.println("\n\n\t-----1 Port: "+port);
BindingProvider bindingProvider=(BindingProvider)port;
Map<String,Object> rc = (Map<String,Object>)bindingProvider.getRequestContext();
System.out.println("\n\n\t-----1 Result: "+port.add(10, 20));

}


The generated WebServiceClient are :
CalculatorFault.java
CalculatorPortType.java
CalculatorPortTypeProxy.java
CalculatorService.java
CalculatorServiceLocator.java
CalculatorServiceSoapBindingStub.java


Kindly help me.
 
He's dead Jim. Grab his tricorder. I'll get his wallet and this tiny ad:
Thread Boost feature
https://coderanch.com/t/674455/Thread-Boost-feature
    Bookmark Topic Watch Topic
  • New Topic