
Informationen zum Add-on
Die Faktor-IPS Runtime-Add-ons bieten die Möglichkeit ein getrenntes Deployment von Produktdaten zu implementieren.
Dazu wird der Product Data Service mit den aktuellen Produktdaten eingespielt. Die Anwendung greift über ein EJB-Client darauf zu.
Service:
<dependency> <groupId>org.faktorips</groupId> <artifactId>faktorips-runtime-productdataservice</artifactId> <version><!-- fips version --></version> </dependency>
Client:
<dependency> <groupId>org.faktorips</groupId> <artifactId>faktorips-runtime-productdataprovider-ejbclient<</artifactId> <version><!-- fips version --></version> </dependency>
Verwendung
Das Produktserver wird konfigurativ definiert:
<ejb-jar>
<enterprise-beans>
<session>
<ejb-name>org.faktorips.productdataservice.ProductDataService</ejb-name>
<business-remote>org.faktorips.productdataservice.IProductDataService</business-remote>
<ejb-class>org.faktorips.productdataservice.ProductDataService</ejb-class>
<session-type>Stateless</session-type>
<env-entry>
<env-entry-name>tocFileName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value><!-- ToC-Pfad --></env-entry-value>
<injection-target>
<injection-target-class>
org.faktorips.productdataservice.ProductDataService
</injection-target-class>
<injection-target-name>tocFileName</injection-target-name>
</injection-target>
</env-entry>
</session>
</enterprise-beans>
</ejb-jar>
In der Anwendung muss dann ein Detached-Content-Repository erzeugt werden:
factory = new EjbProductDataProviderFactory("org.faktorips.productdataservice.ProductDataServiceRemote", initalContext);
runtimeRepository = new DetachedContentRuntimeRepositoryManager.Builder(factory)
.setFormulaEvaluatorFactory(new GroovyFormulaEvaluatorFactory())
.build()
.getCurrentRuntimeRepository();