Simon Lundstrom created CAMEL-9617:
--------------------------------------

             Summary: Support inlining model inside Blueprint
                 Key: CAMEL-9617
                 URL: https://issues.apache.org/jira/browse/CAMEL-9617
             Project: Camel
          Issue Type: Improvement
          Components: camel-cxfrs
    Affects Versions: 2.16.1
         Environment: ServiceMix 6.1.0
            Reporter: Simon Lundstrom
            Priority: Minor


Defining a REST service without any code or additional files other than a 
blueprint file is nice to have. restlet supports this but restlet doesn't 
integrate with the OSGi http feature. CXFRS does though.

{code}
<?xml version="1.0" encoding="UTF-8"?>
<blueprint
    xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="
      http://www.osgi.org/xmlns/blueprint/v1.0.0 
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
      http://camel.apache.org/schema/blueprint/cxf 
http://camel.apache.org/schema/cxf/camel-cxf.xsd
    ">

  <rsServer id="rsServer" xmlns="http://camel.apache.org/schema/blueprint/cxf";>
    <model>
      <resource path="/mailcommit">
        <operation verb="POST">
          <param type="REQUEST_BODY" />
        </operation>
      </resource>
    </model>
  </rsServer>

  <camelContext xmlns="http://camel.apache.org/schema/blueprint";>
    <route>
      <from uri="cxfrs:bean:rsServer" />
      <convertBodyTo type="java.lang.String" />
      <inOnly uri="log:test" />
    </route>
  </camelContext>
</blueprint>
{code}
should be able to create a REST service which answers on POSTs to 
/cxf/mailcommit.

It's possible today to use:
{code}
    <route>
      <from uri="cxfrs://?modelRef=file:/path/to/model.xml" />
      <convertBodyTo type="java.lang.String" />
      <inOnly uri="log:test" />
    </route>
{code}
but this adds the dependency of an external file.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to