> -----Original Message-----
> From: Sergey Beryozkin [mailto:[email protected]]
> Sent: Wednesday, August 26, 2009 7:51 AM
> To: [email protected]
> Subject: Re: getting "NO_RESOURCES_AVAILABLE" from
> "AbstractJAXRSFactoryBean.checkResources()"
> 
> Actually, you may not even need to move the behaviours to the
> interface, unless Spring proxifies a bean (with AOP, etc).
> The model is applied to Spring-injected beans too, the runtime will
> only attempt to create an instance of the class described in the
> model if no beans matching/implementing a given class/interface have
> already been injected....

I could use some clarification of this last point.  Assuming the
following Spring context:
---------------------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xmlns:jaxws="http://cxf.apache.org/jaxws";
    xmlns:jaxrs="http://cxf.apache.org/jaxrs";
    xmlns:cxf="http://cxf.apache.org/core";
        xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
http://cxf.apache.org/core http://cxf.apache.org/schemascore.xsd";>

        <import resource="classpath:META-INF/cxf/cxf.xml" />
        <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"
/>
        <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
    <import
resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml" />
    
    <jaxrs:server name="restcatalogserver" address="/rest">
        <jaxrs:features>
            <cxf:logging/>
        </jaxrs:features>
        <jaxrs:model>
            <jaxrs:resource name="com.att.ecom.catalog.Catalog"
path="/catalog/">
                <jaxrs:operation name="getItem" verb="GET"
path="/item/{id}">
                    <jaxrs:param name="id" type="PATH"/>
                </jaxrs:operation>
            </jaxrs:resource>
        </jaxrs:model>
        <jaxrs:serviceBeans>
            <ref bean="catalog"/>
        </jaxrs:serviceBeans>
    </jaxrs:server>
     
    <bean id="catalog" class="com.att.ecom.catalog.Catalog"/>
</beans>
---------------------

So are you saying that the "name" attribute of "jaxrs:resource" is
searched through all existing bean instances for a matching class, and
if one is found, it won't create an additional instance?  That seems
odd.

I only propose that because I don't believe it, and I think I can
demonstrate it, although I could easily be misunderstanding something.
In particular, with this context, how many times would you expect the
"Catalog" constructor to be called?  Assuming your description, I would
say once.  However, when I set a breakpoint in the constructor, I hit it
twice.  One of the stack traces shows it's just Spring creating it, and
the other stack trace shows that it's CXF creating it.

> 
> cheers, Sergey
> 
> ----- Original Message -----
> From: "Sergey Beryozkin" <[email protected]>
> To: <[email protected]>
> Sent: Wednesday, August 26, 2009 3:34 PM
> Subject: Re: getting "NO_RESOURCES_AVAILABLE" from
> "AbstractJAXRSFactoryBean.checkResources()"
> 
> 
> > This is where moving the methods to be handled by JAXRS into a
> seperate interfaces comes handly.
> > So if Catalog were an interface and say CatalogImpl were the
> implementation then you'd describe Catalog in the user model (as
> > suggested in the prev email) but in Spring you'd declare a
> CatalogImpl service bean and inject properties or even proxify it as
> > needed.
> >
> > Give it a try please. The DOSGi demo I linked to describes the
> interface only (GreeterService2) in its user model but the OSGI
> > Activator registers an interface implementation object
> >
> > cheers, Sergey
> >
> >> -----Original Message-----
> >> From: Sergey Beryozkin [mailto:[email protected]]
> >> Sent: Wednesday, August 26, 2009 2:21 AM
> >> To: [email protected]
> >> Subject: RE: getting "NO_RESOURCES_AVAILABLE" from
> >> "AbstractJAXRSFactoryBean.checkResources()"
> >>
> >>
> >> Hi
> >>
> >> This is a good news...
> >> Here's some more information on how to apply this feature. I'll
need
> > to
> >> document it better - have added a task item...For, given the
Catalog
> >> class
> >> mentioned in this thread the following model can be created :
> >
> > This is very good information.
> >
> > One question, though.  The way you specify the class to instantiate
> is
> > different from typical Spring beans.  It appears there's no way to
> > specify a Spring bean as a resource.  As a result, it appears that
> > there's no way to inject instance variable values into the resource,
> for
> > configuration control, for instance.  It's odd that the attribute is
> > "name", instead of "class".
> >
> > This is odd, as in the same "jaxrs:server" element is the
> > "jaxrs:serviceBeans" element, where you specify the list of beans
> that
> > represent services.
> >
> > So, I assume there's some clarity here somewhere that I haven't seen
> > yet.
> >
> >>
> >> <model>
> >> <resource name=" com.att.ecom.catalog.Catalog" path="/catalog">
> >> <operation name="getItems" verb="GET" path="/items"/>
> >> </resource>
> >> </model>
> >>
> >> The schema for 'model' is here :
> >>
> >
>
http://svn.apache.org/repos/asf/cxf/trunk/rt/frontend/jaxrs/src/main/re
> >> sources/schemas/jaxrs.xsd
> >>
> >> it is limiting a bit, specifically, parameter types should be
> >> capitalized at
> >> the moment and there's no a proper enum definition for parameter
> > types.
> >> For
> >> ex, 'PATH', 'QUERY', 'MATRIX', 'HEADER' is what should be used when
> >> describing parameters that would otherwise be annotated with
> >> @PathParam,
> >> @QueryParam, @MatrixParam, @HeaderParam. There's no need to
describe
> >> input
> >> parameters which are mapped to request bodies. Response parameters
> are
> >> not
> >> described too.
> >>
> >> 'resource' represents a resource class. It can describe either a
> root
> >> resource or a subresource one.
> >> For ex, if you have
> >>
> >> @Path("catalog")
> >> public class Catalog {
> >>
> >>   @GET
> >>   @Path("items")
> >>   public List<Item> getItems() {...}
> >>
> >>   @Path("items/{id}")
> >>   public Item getItemName(@PathParam("id") Long id) {...}
> >>
> >> }
> >>
> >> where getItemName is a subresource locator and Item class has a
> method
> >> like
> >>
> >> public class Item {
> >> @GET
> >> public String getName() {...}
> >> }
> >>
> >> then, if we remove annotations, the same can be described like this
> :
> >>
> >> <model>
> >>
> >> <resource name=" com.att.ecom.catalog.Catalog" path="/catalog">
> >> <operation name="getItems" verb="GET" path="/items"/>
> >> <operation name="getItemName" path="/item/{id}">
> >>
> >> </operation>
> >> </operation>
> >> </resource>
> >>
> >> <resource name="com.att.ecom.catalog.Item">
> >> <operation name="getName" verb="GET"/>
> >> </operation>
> >> </resource>
> >>
> >> </model>
> >>
> >> The resource with name "com.att.ecom.catalog.Item" is recognized as
> a
> >> subresource because when it introspects
> >> com.att.ecom.catalog.Catalog#getItemName it finds that its return
> >> type's
> >> name matches '"com.att.ecom.catalog.Item".
> >> So it's a flat structure but perhaps I'll support embedding
> resources
> >> too,
> >> similar to the way it's done in WADL. At the moment the only place
> >> where
> >> this feature is demoed is in a 'greeter_rest' demo in a DOSGi
> >> distribution[1] where IMHO this feature can be very handy indeed
but
> I
> >> do
> >> want to allocate more time on it and document and enhance it
> properly.
> >>
> >> Sergey
> >>
> >> [1]
> >>
> http://svn.apache.org/repos/asf/cxf/dosgi/trunk/samples/greeter_rest/
> >>
> >>
> >> KARR, DAVID (ATTCINW) wrote:
> >> >
> >> >> -----Original Message-----
> >> >> From: Sergey Beryozkin [mailto:[email protected]]
> >> >> Sent: Tuesday, August 25, 2009 1:02 PM
> >> >> To: [email protected]
> >> >> Subject: RE: getting "NO_RESOURCES_AVAILABLE" from
> >> >> "AbstractJAXRSFactoryBean.checkResources()"
> >> >>
> >> >> As the last resort/workaround, while you're investigating and
> just
> >> to
> >> >> keep
> >> >> you going, you might want to try this feature :
> >> >> http://cxf.apache.org/docs/jax-rs.html#JAX-RS-
> >> >> RESTfulserviceswithoutannotations
> >> >>
> >> >> You can describe how Catalog should be treated by the JAX-RS
> > runtime
> >> >> without
> >> >> applying annotations and then register that description from
> spring
> >> >
> >> > I've gotten this to work (config in Spring, not annotations), so
> > I'll
> >> at
> >> > least be able to move forward a bit.
> >> >
> >> >> KARR, DAVID (ATTCINW) wrote:
> >> >> >
> >> >> >> -----Original Message-----
> >> >> >> From: Sergey Beryozkin [mailto:[email protected]]
> >> >> >> Sent: Tuesday, August 25, 2009 10:06 AM
> >> >> >> To: [email protected]
> >> >> >> Subject: RE: getting "NO_RESOURCES_AVAILABLE" from
> >> >> >> "AbstractJAXRSFactoryBean.checkResources()"
> >> >> >>
> >> >> >>
> >> >> >> is it OSGi that is getting in the way ? Are you using OSGI by
> > any
> >> >> >> chance ?
> >> >> >> That is the only reason I can think of...
> >> >> >
> >> >> > The prototype is embedded along with a lot of other code that
> is
> >> >> > assembled into an EAR with the ATG Dynamo framework.  I'm
> pretty
> >> > sure
> >> >> > they're not using OSGi, but the EAR assembly is relatively
> >> complex.
> >> >> I'm
> >> >> > not sure what they could be doing that could possibly mess
this
> >> up.
> >> >> >
> >> >> >> If yes then importing javax.ws.rs.* should fix it....
> >> >> >
> >> >> > I assume you mean in the Catalog class?  I'll try it.
> >> >> >
> >> >> >> Is it also possible for you to create a simple test project
> > where
> >> >> you
> >> >> >> will
> >> >> >> load catalog class and try to get the @Path annotation on a
> >> >> >> Catalog.getItems() method, without even CXF being involved ?
> >> >> >
> >> >> > I'll put that on the list of things to try, but I would be
> >> extremely
> >> >> > surprised if that displayed any problem.  It's likely
something
> >> > about
> >> >> my
> >> >> > deployment environment that is causing this.
> >> >> >
> >> >> >> KARR, DAVID (ATTCINW) wrote:
> >> >> >> >
> >> >> >> >> -----Original Message-----
> >> >> >> >> From: Sergey Beryozkin [mailto:[email protected]]
> >> >> >> >> Sent: Tuesday, August 25, 2009 7:18 AM
> >> >> >> >> To: [email protected]
> >> >> >> >> Subject: RE: getting "NO_RESOURCES_AVAILABLE" from
> >> >> >> >> "AbstractJAXRSFactoryBean.checkResources()"
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> Please add breakpoints to
> >> >> >> org.apache.cxf.jaxrs.JAXRSServerFactoryBean,
> >> >> >> >> its
> >> >> >> >> two setServiceBeans(...) methods.
> >> > JAXRSServerFactoryBean.create()
> >> >> > is
> >> >> >> >> called
> >> >> >> >> after one of those methods has been called.
> >> >> >> >
> >> >> >> > It hit "setServiceBeans(Object... beans)" with my one
> Catalog
> >> >> > object.
> >> >> >> >
> >> >> >> > In "getCreatedFromModel(Class<?> realClass)", I noted that
> >> >> >> > "classResourceInfos" was an empty list, so it returned
null.
> >> > That
> >> >> >> could
> >> >> >> > be irrelevant.
> >> >> >> >
> >> >> >> > Then, in "evaluateResourceClass(ClassResourceInfo cri,
> boolean
> >> >> >> > enableStatic)", I saw that when it was processing the
> > "getItem"
> >> >> >> method,
> >> >> >> > "AnnotationUtils.getHttpMethodValue(annotatedMethod)"
> returned
> >> >> null,
> >> >> >> so
> >> >> >> > it didn't create any class resource info.  It also returned
> >> null
> >> >> > from
> >> >> >> > "AnnotationUtils.getMethodAnnotation(annotatedMethod,
> >> >> Path.class)".
> >> >> >> The
> >> >> >> > "getItem()" method has both the "@GET" and "@Path"
> annotation.
> >> >> >> >
> >> >> >> > Why doesn't it think there are any annotations?
> >> >> >> >
> >> >> >> >> KARR, DAVID (ATTCINW) wrote:
> >> >> >> >> >
> >> >> >> >> >> -----Original Message-----
> >> >> >> >> >> From: Sergey Beryozkin
> [mailto:[email protected]]
> >> >> >> >> >> Sent: Tuesday, August 25, 2009 3:54 AM
> >> >> >> >> >> To: [email protected]
> >> >> >> >> >> Subject: RE: getting "NO_RESOURCES_AVAILABLE" from
> >> >> >> >> >> "AbstractJAXRSFactoryBean.checkResources()"
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> I've tried this class & beans.xml in the system tests
> > area,
> >> >> >> Catalog
> >> >> >> >> >> class was
> >> >> >> >> >> recognized.
> >> >> >> >> >>
> >> >> >> >> >> Can you please let me know a bit more about the way you
> >> load
> >> >> the
> >> >> >> >> >> (catalog)
> >> >> >> >> >> application ?
> >> >> >> >> >> Are you using Maven or Ant ? Is it Jetty or Tomcat ? Or
> is
> >> it
> >> >> a
> >> >> >> >> >> standalone
> >> >> >> >> >> server which explicitly loads the beans.xml ?
> >> >> >> >> >
> >> >> >> >> > I build the application with Ant.  It's deployed to
> > WebLogic
> >> >> 10.
> >> >> >> >> >
> >> >> >> >> > Can you point me to some classes or methods that I could
> > set
> >> >> >> >> breakpoints
> >> >> >> >> > in to try to diagnose why it's not processing the
Catalog
> >> >> class?
> >> >> >> >> >
> >> >> >> >> >>
> >> >> >> >> >> thanks, Sergey
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> KARR, DAVID (ATTCINW) wrote:
> >> >> >> >> >> >
> >> >> >> >> >> >> -----Original Message-----
> >> >> >> >> >> >> From: Sergey Beryozkin
> >> [mailto:[email protected]]
> >> >> >> >> >> >> Sent: Monday, August 24, 2009 1:13 PM
> >> >> >> >> >> >> To: [email protected]
> >> >> >> >> >> >> Subject: Re: getting "NO_RESOURCES_AVAILABLE" from
> >> >> >> >> >> >> "AbstractJAXRSFactoryBean.checkResources()"
> >> >> >> >> >> >>
> >> >> >> >> >> >>
> >> >> >> >> >> >> Hi
> >> >> >> >> >> >>
> >> >> >> >> >> >> Everything seems to be ok.
> >> >> >> >> >> >> It appears the problem is to do with a missing
import
> :
> >> >> >> >> >> >>
> >> >> >> >> >> >> <import resource="classpath:META-INF/cxf/cxf-
> extension-
> >> >> jaxrs-
> >> >> >> >> >> >> binding.xml" />
> >> >> >> >> >> >>
> >> >> >> >> >> >> can you add it please to your beans.xml ?
> >> >> >> >> >> >>
> >> >> >> >> >> >> For some reasons Catalog class is not introspected.
> >> > Perhaps
> >> >> >> due
> >> >> >> >> to
> >> >> >> >> >> the
> >> >> >> >> >> >> fact
> >> >> >> >> >> >> the above import is missing and thus no jaxrs-aware
> >> spring
> >> >> >> >> factory
> >> >> >> >> >> is
> >> >> >> >> >> >> invoked
> >> >> >> >> >> >
> >> >> >> >> >> > Nope, I'm afraid that didn't help.
> >> >> >> >> >> >
> >> >> >> >> >> > The relevant jars I'm loading are: cxf-2.2.3.jar,
> jaxb-
> >> api-
> >> >> >> >> 2.1.jar,
> >> >> >> >> >> > jsr311-api-1.0.jar, spring.jar, and wsdl4j.jar
> >> >> >> >> >> >
> >> >> >> >> >> > My current XML and Java are this:
> >> >> >> >> >> > -----beans.xml------
> >> >> >> >> >> > <?xml version="1.0" encoding="UTF-8"?>
> >> >> >> >> >> > <beans
> >> xmlns="http://www.springframework.org/schema/beans";
> >> >> >> >> >> >
> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> >> >> >> >> >> > xmlns:jaxws="http://cxf.apache.org/jaxws";
> >> >> >> >> >> >     xmlns:jaxrs="http://cxf.apache.org/jaxrs";
> >> >> >> >> >> >     xmlns:cxf="http://cxf.apache.org/core";
> >> >> >> >> >> > xsi:schemaLocation="
> >> >> >> >> >> > http://www.springframework.org/schema/beans
> >> >> >> >> >> >
> >> > http://www.springframework.org/schema/beans/spring-beans.xsd
> >> >> >> >> >> > http://cxf.apache.org/jaxws
> >> >> >> >> http://cxf.apache.org/schemas/jaxws.xsd
> >> >> >> >> >> > http://cxf.apache.org/jaxrs
> >> >> >> >> http://cxf.apache.org/schemas/jaxrs.xsd
> >> >> >> >> >> > http://cxf.apache.org/core
> >> >> >> > http://cxf.apache.org/schemascore.xsd";>
> >> >> >> >> >> >
> >> >> >> >> >> > <import
> > resource="classpath:META-INF/cxf/cxf.xml" />
> >> >> >> >> >> > <import resource="classpath:META-INF/cxf/cxf-
> >> extension-
> >> >> >> soap.xml"
> >> >> >> >> >> > />
> >> >> >> >> >> > <import
> >> >> > resource="classpath:META-INF/cxf/cxf-servlet.xml"
> >> >> >> />
> >> >> >> >> >> >     <import
> >> >> >> >> >> > resource="classpath:META-INF/cxf/cxf-extension-jaxrs-
> >> >> >> binding.xml"
> >> >> >> >> />
> >> >> >> >> >> >
> >> >> >> >> >> >     <jaxrs:server name="restcatalogserver"
> >> address="/rest">
> >> >> >> >> >> >         <jaxrs:features>
> >> >> >> >> >> >             <cxf:logging/>
> >> >> >> >> >> >         </jaxrs:features>
> >> >> >> >> >> >         <jaxrs:serviceBeans>
> >> >> >> >> >> >             <bean
> class="com.att.ecom.catalog.Catalog"/>
> >> >> >> >> >> >         </jaxrs:serviceBeans>
> >> >> >> >> >> >     </jaxrs:server>
> >> >> >> >> >> > </beans>
> >> >> >> >> >> > -------------------------
> >> >> >> >> >> > -----Catalog.java-----
> >> >> >> >> >> > package com.att.ecom.catalog;
> >> >> >> >> >> > import java.util.ArrayList;
> >> >> >> >> >> > import java.util.List;
> >> >> >> >> >> > import javax.ws.rs.GET;
> >> >> >> >> >> > import javax.ws.rs.Path;
> >> >> >> >> >> > import javax.ws.rs.PathParam;
> >> >> >> >> >> > import javax.ws.rs.Produces;
> >> >> >> >> >> > import javax.xml.bind.annotation.XmlRootElement;
> >> >> >> >> >> >
> >> >> >> >> >> > @Path("/catalog/")
> >> >> >> >> >> > @Produces("application/xml")
> >> >> >> >> >> > public class Catalog {
> >> >> >> >> >> > @GET
> >> >> >> >> >> > @Path("/item/{id}")
> >> >> >> >> >> > public Item getItem(@PathParam("id") String id)
> > {
> >> >> >> >> >> > Item item = new Item();
> >> >> >> >> >> > item.setId(id);
> >> >> >> >> >> > item.setTitle("abc");
> >> >> >> >> >> > item.setDescription("def");
> >> >> >> >> >> > return new Item();
> >> >> >> >> >> > }
> >> >> >> >> >> > @XmlRootElement(name = "Item")
> >> >> >> >> >> > public static class Item {
> >> >> >> >> >> > private String id;
> >> >> >> >> >> > private String title;
> >> >> >> >> >> > private String  description;
> >> >> >> >> >> >
> >> >> >> >> >> > public String getTitle() { return title;
> > }
> >> >> >> >> >> > public String getId() { return id; }
> >> >> >> >> >> > public String getDescription() { return
> >> >> > description;
> >> >> >> }
> >> >> >> >> >> >
> >> >> >> >> >> > public void setTitle(String title) {
> > this.title
> >> >> > =
> >> >> >> title;
> >> >> >> >> >> > }
> >> >> >> >> >> > public void setId(String id) { this.id =
> > id; }
> >> >> >> >> >> > public void setDescription(String
> > description)
> >> {
> >> >> >> >> >> > this.description = description; }
> >> >> >> >> >> > }
> >> >> >> >> >> > }
> >> >> >> >> >> > --------------------
> >> >> >> >> >> >
> >> >> >> >> >> >> KARR, DAVID (ATTCINW) wrote:
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > I'm trying to set up a simple REST prototype
> running
> >> >> >> alongside
> >> >> >> >> >> some
> >> >> >> >> >> >> > other existing code.
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > When I deploy, I appear to fall into the following
> >> "if"
> >> >> >> block
> >> >> >> >> in
> >> >> >> >> >> >> > "AbstractJAXRSFactoryBean.checkResources()":
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > -----------------
> >> >> >> >> >> >> >         if (list.size() == 0) {
> >> >> >> >> >> >> >             org.apache.cxf.common.i18n.Message msg
> =
> >> >> >> >> >> >> >                 new
> >> >> >> >> >> >> >
> >> >> > org.apache.cxf.common.i18n.Message("NO_RESOURCES_AVAILABLE",
> >> >> >> >> >> >> >
> >> >> >> > BUNDLE);
> >> >> >> >> >> >> >             LOG.severe(msg.toString());
> >> >> >> >> >> >> >             throw new
> >> >> >> >> >> >> >
WebApplicationException(Response.Status.NOT_FOUND);
> >> >> >> >> >> >> >         }
> >> >> >> >> >> >> > ---------------
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > This list would be empty if
> >> >> >> >> >> >> "serviceFactory.getRealClassResourceInfo()"
> >> >> >> >> >> >> > returned an empty list.  What exactly would that
> >> >> indicate?
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > My beans.xml is very simple right now, just:
> >> >> >> >> >> >> > -----------------------
> >> >> >> >> >> >> > <?xml version="1.0" encoding="UTF-8"?>
> >> >> >> >> >> >> > <beans
> >> >> xmlns="http://www.springframework.org/schema/beans";
> >> >> >> >> >> >> >
> >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> >> >> >> >> >> >> > xmlns:jaxws="http://cxf.apache.org/jaxws";
> >> >> >> >> >> >> >     xmlns:jaxrs="http://cxf.apache.org/jaxrs";
> >> >> >> >> >> >> > xsi:schemaLocation="
> >> >> >> >> >> >> > http://www.springframework.org/schema/beans
> >> >> >> >> >> >> >
> >> >> > http://www.springframework.org/schema/beans/spring-beans.xsd
> >> >> >> >> >> >> > http://cxf.apache.org/jaxws
> >> >> >> >> >> http://cxf.apache.org/schemas/jaxws.xsd
> >> >> >> >> >> >> > http://cxf.apache.org/jaxrs
> >> >> >> >> >> > http://cxf.apache.org/schemas/jaxrs.xsd";>
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > <import
> >> > resource="classpath:META-INF/cxf/cxf.xml" />
> >> >> >> >> >> >> > <import resource="classpath:META-INF/cxf/cxf-
> >> >> extension-
> >> >> >> >> soap.xml"
> >> >> >> >> >> >> > />
> >> >> >> >> >> >> > <import
> >> >> >> > resource="classpath:META-INF/cxf/cxf-servlet.xml"
> >> >> >> >> />
> >> >> >> >> >> >> >
> >> >> >> >> >> >> >     <jaxrs:server name="restcatalogserver"
> >> >> address="/rest">
> >> >> >> >> >> >> >         <jaxrs:serviceBeans>
> >> >> >> >> >> >> >             <bean
> >> class="com.att.ecom.catalog.Catalog"/>
> >> >> >> >> >> >> >         </jaxrs:serviceBeans>
> >> >> >> >> >> >> >     </jaxrs:server>
> >> >> >> >> >> >> > </beans>
> >> >> >> >> >> >> > --------------------
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > The "Catalog" class is also very primitive so far:
> >> >> >> >> >> >> > --------------------------
> >> >> >> >> >> >> > package com.att.ecom.catalog;
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > import java.util.ArrayList;
> >> >> >> >> >> >> > import java.util.List;
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > import javax.ws.rs.GET;
> >> >> >> >> >> >> > import javax.ws.rs.Path;
> >> >> >> >> >> >> > import javax.ws.rs.Produces;
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > @Path("/catalog/")
> >> >> >> >> >> >> > @Produces("application/xml")
> >> >> >> >> >> >> > public class Catalog {
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > @GET
> >> >> >> >> >> >> > @Path("/items")
> >> >> >> >> >> >> > public List<Item> getItems() {
> >> >> >> >> >> >> > ArrayList<Item> result = new
> >> >> >> >> ArrayList<Item>();
> >> >> >> >> >> >> > result.add(new Item());
> >> >> >> >> >> >> > return (result);
> >> >> >> >> >> >> > }
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > public static class Item {
> >> >> >> >> >> >> > private String title;
> >> >> >> >> >> >> > private String  description;
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > public String getTitle() { return title;
> >> > }
> >> >> >> >> >> >> > public String getDescription() { return
> >> >> >> > description;
> >> >> >> >> }
> >> >> >> >> >> >> >
> >> >> >> >> >> >> > public void setTitle(String title) {
> >> > this.title
> >> >> >> > =
> >> >> >> >> title;
> >> >> >> >> >> >> > }
> >> >> >> >> >> >> > public void setDescription(String
> >> > description)
> >> >> {
> >> >> >> >> >> >> > this.description = description; }
> >> >> >> >> >> >> > }
> >> >> >> >> >> >> > }
> >> >> >> >> >> >> > ----------------------------
> >> >> >> >> >> >> >
> >> >> >> >> >> >> >
> >> >> >> >> >> >>
> >> >> >> >> >> >> --
> >> >> >> >> >> >> View this message in context:
> >> >> http://www.nabble.com/getting-
> >> >> >> >> >> >> %22NO_RESOURCES_AVAILABLE%22-from-
> >> >> >> >> >> >> %22AbstractJAXRSFactoryBean.checkResources%28%29%22-
> >> >> >> >> >> >> tp25120790p25123056.html
> >> >> >> >> >> >> Sent from the cxf-user mailing list archive at
> >> Nabble.com.
> >> >> >> >> >> >
> >> >> >> >> >> >
> >> >> >> >> >> >
> >> >> >> >> >>
> >> >> >> >> >> --
> >> >> >> >> >> View this message in context:
> >> http://www.nabble.com/getting-
> >> >> >> >> >> %22NO_RESOURCES_AVAILABLE%22-from-
> >> >> >> >> >> %22AbstractJAXRSFactoryBean.checkResources%28%29%22-
> >> >> >> >> >> tp25120790p25132223.html
> >> >> >> >> >> Sent from the cxf-user mailing list archive at
> Nabble.com.
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >> >
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> View this message in context:
> http://www.nabble.com/getting-
> >> >> >> >> %22NO_RESOURCES_AVAILABLE%22-from-
> >> >> >> >> %22AbstractJAXRSFactoryBean.checkResources%28%29%22-
> >> >> >> >> tp25120790p25135192.html
> >> >> >> >> Sent from the cxf-user mailing list archive at Nabble.com.
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >> --
> >> >> >> View this message in context: http://www.nabble.com/getting-
> >> >> >> %22NO_RESOURCES_AVAILABLE%22-from-
> >> >> >> %22AbstractJAXRSFactoryBean.checkResources%28%29%22-
> >> >> >> tp25120790p25138372.html
> >> >> >> Sent from the cxf-user mailing list archive at Nabble.com.
> >> >> >
> >> >> >
> >> >> >
> >> >>
> >> >> --
> >> >> View this message in context: http://www.nabble.com/getting-
> >> >> %22NO_RESOURCES_AVAILABLE%22-from-
> >> >> %22AbstractJAXRSFactoryBean.checkResources%28%29%22-
> >> >> tp25120790p25141130.html
> >> >> Sent from the cxf-user mailing list archive at Nabble.com.
> >> >
> >> >
> >> >
> >>
> >> --
> >> View this message in context: http://www.nabble.com/getting-
> >> %22NO_RESOURCES_AVAILABLE%22-from-
> >> %22AbstractJAXRSFactoryBean.checkResources%28%29%22-
> >> tp25120790p25149335.html
> >> Sent from the cxf-user mailing list archive at Nabble.com.
> >

Reply via email to