VIPSCore
This is the server component that hosts the models. It is accessible via VIPSCoreManager over http/REST. Models that are on the component's classpath are autodetected, indexed and made available through the REST service. The service is used by VIPSLogic when running models. It can also be contacted directly by any client.
VIPSCore is a part of the VIPS platform for automatic pest prediction
VIPSCoreManager
VIPSCoreManager is a layer in front of VIPSCore that handles authentication of clients and logging of usage. All services available in VIPSLogic are transparently accessible via VIPSCoreManager. Add this layer if you want to limit and log usage, and also if you want to set up e.g. scaling of VIPSCore instances.
Build and deploy
You need Maven installed.
Clone and build the VIPSCommon package
Clone and build this project
Download and install WildFly >= 25.0.1
Deploy the build from this project in Wildfly.
Wildfly should run on Java >= 11
Adding models
To add models, create this folder in WildFly:
[WILDFLY_ROOT]/modules/no/nibio/vips/modelcontainer/main/
Add the model jar file, and edit module.xml accordingly.
<?xml version="1.0" encoding="UTF-8"?>
<!--
© 2019 NIBIO
Author: Tor-Einar Skog <tor-einar.skog@nibio.no>
-->
<module xmlns="urn:jboss:module:1.1" name="no.nibio.vips.modelcontainer">
<resources>
<resource-root path="PsilaRosaeTempModel-1.0-SNAPSHOT.jar"/>
</resources>
<dependencies>
<module name="no.nibio.vips.VIPSCommon" export="false"/>
<module name="com.fasterxml.jackson.core.jackson-core" export="false"/>
<module name="com.fasterxml.jackson.core.jackson-databind" export="false"/>
<module name="com.vividsolutions.jts" export="false"/>
<module name="org.renjin" export="false"/>
</dependencies>
</module>
You also need to make sure you have the dependency modules available.
Implement a model
Create client for a model
See create_client.md