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();