On 06/28/2012 06:40 AM, Sergey Beryozkin wrote:
What is the error you are seeing ? Do you use Jackson or the default provider ?

Sergey

On 28/06/12 12:22, ramesh wrote:
I am unable to pass JSON data as POST.
{ "Member":{"id":"3" , "city":"Tokyo", "country":"Japan" }}
Is this the right format.


this is my interface:

@Path("/for")
public interface ReqService {

/**
* Adds an invite requested by the guest.
*/
@POST
@Path("/invite")
@Consumes("application/json")
public void addMember(Member mem);

}

and this is my implementation:

@Override
public void addMember(Member mem){
String rkey =mem.getId();
String col1 = mem.getCity();
String col2 = mem.getCountry();
myDAO.insertMulti(rkey, col1, col2);
}

@XmlRootElement(name = "Member")
@XmlType( propOrder = {"id", "city", "country" })
public class Member {
private String id;
private String city;
private String country;

getters & setters ..

regards,
Ramesh


Hi Sergey,

I am using a webclient to pass this JSON.
This is the error I get after I changed Consume to application/x-www-form-urlencoded.

org.apache.cxf.interceptor.Fault
        at 
org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:110)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:323)
        at 
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:123)
        at 
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:206)
        at 
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213)
        at 
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:154)
        at 
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:126)
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:184)
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:107)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)


If I use content type as JSON, I get status 415 and server throws this error

javax.ws.rs.WebApplicationException
at org.apache.cxf.jaxrs.utils.JAXRSUtils.findTargetMethod(JAXRSUtils.java:413)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:211)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:88)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:123)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:206)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:154)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:126)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:184)[137:org.apache.cxf.bundle:2.5.0] at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:107)[137:org.apache.cxf.bundle:2.5.0] at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)[63:org.apache.geronimo.specs.geronimo-servlet_2.5_spec:1.1.2] at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:163)[137:org.apache.cxf.bundle:2.5.0] at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:547)[73:org.eclipse.jetty.servlet:7.5.4.v20111024] at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:480)[73:org.eclipse.jetty.servlet:7.5.4.v20111024] at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:70)[83:org.ops4j.pax.web.pax-web-jetty:1.0.9]

regards,
Ramesh




Reply via email to