...
3) reportincident.service
Like in for the service project reportincident.persistence, we will replace our pom.xml file with the one provide provided in the zip file. As you can see in the <Import-Package>, we will import here the class required by the service : org.apache.camel.example.reportincident.dao
Adding this line in the Import-Package is not enough to have access to the OSGI service. To use the service, we will add the code.The file spring-service-beans-dao.xml
must be modified to have a reference to this interface through the osgi:reference namespace :
Code Block |
---|
...
<property name="incidentDAO">
<osgi:reference interface="org.apache.camel.example.reportincident.dao.IncidentDAO"/>
</property>
...
|
To expose our service as an OSGI service, we will create the file service-osgi.xml
in the directory src/main/resources/META-INF/spring
and add the code.
Code Block |
---|
<?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:osgi="http://www.springframework.org/schema/osgi"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/osgi
http://www.springframework.org/schema/osgi/spring-osgi.xsd">
<osgi:service ref="incidentService" interface="org.apache.camel.example.reportincident.service.IncidentService"/>
</beans>
|
Routing/Mediation service
...