Hi
I can not reproduce it. You haven't send the source so this is the source I've
come up with :
@Path("/")
public interface ContentProcess {
@GET
@Path("/content/")
@Produces("application/xml")
public Book getContent(@QueryParam("address") String address);
@GET
@Path("/detail/")
@Produces("application/xml")
public Book getLocalDetail(@QueryParam("address") String address,
@QueryParam("region") String region,
@QueryParam("effectiveDate") String effectiveDate);
}
import com.abc.content.endpoint.ContentProcess;
import com.abc.content.endpoint.Book;
public class ContentProcessImpl implements ContentProcess {
public Book getContent(String address) {
// TODO Auto-generated method stub
return new Book("Hi", 2);
}
public Book getLocalDetail(String address, String region, String effectiveDate)
{
// TODO Auto-generated method stub
return new Book("Hi", 1);
}
}
where the book is a simple bean.
No problems invoking a /detail/ method on Jetty/Tomcat, ex Firefox to Tomcat
6.1:
GET /samplewar/detail/ HTTP/1.1
Host: localhost:8081
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.17)
Gecko/2009122116 Firefox/3.0.17 (.NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Date: Thu, 28 Jan 2010 13:10:41 GMT
Content-Type: application/xml
Content-Length: 93
<?xml version="1.0" encoding="UTF-8"
standalone="yes"?><Book><id>1</id><name>Hi</name></Book>HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Accept-Ranges: bytes
ETag: W/"21630-1242260104000"
Last-Modified: Thu, 14 May 2009 00:15:04 GMT
Content-Length: 21630
Date: Thu, 28 Jan 2010 13:10:41 GMT
here's the same IE request which succeeds.
GET /samplewar/detail/ HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, application/vnd.ms-powerpoint,
application/vnd.ms-excel, application/x-shockwave-flash, application/x-silverlight, application/x-ms-application,
application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*
Accept-Language: en-ie
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET
CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Host: localhost:8081
Connection: Keep-Alive
here' the request from the test client using the same contenrt type and accept
values you posted which also succeeds :
GET /samplewar/detail/ HTTP/1.1
Content-Type: */*
Accept:
image/gif,image/x-xbitmap,image/jpeg,image/pjpeg,application/vnd.ms-excel,application/vnd.ms-powerpoint,application/msword,application/xaml+xml,application/vnd.ms-xpsdocument,application/x-ms-xbap,application/x-ms-application,application/x-shockwave-flash,*/*,
User-Agent: Apache CXF 2.3.0-SNAPSHOT
Cache-Control: no-cache
Pragma: no-cache
Host: localhost:8081
Connection: keep-alive
Please debug your application, download CXF source and put a breakpoint in JAXRSInInterceptor and see what happens. Perhaps you're
adding some additional JAXRS annotations in ContentProcessImpl ?
Sergey
P.S. By the way, I can also see a /detail method in WADL.