2016-07-29 20 views
1

Ich baue ein Spiel! Framework (2.5) Java-Anwendung und ich möchte es über Ebean mit ElasticSearch verbinden.Verbindung herstellen Spielen! Framework durch Ebean zu ElasticSearch

zuerst, gefolgt I the steps here und erfolgreich auf eine Dummy-Jdbc verbunden (Added-Plugin, modifizierte build.sbt, hinzugefügt ebean.default="models.*", default.driver = org.h2.Driver und default.url = "jdbc:h2:mem:play" zu application.conf). So weit, ist es gut.

Jetzt möchte ich meine Verbindung zu ElasticSearch anstelle von jdbc wechseln, so dass ich the steps here folgen, aber ich kann es nicht für das Leben von mir herausfinden. Was ich bisher getan:

  • hinzugefügt build.sbt:

    libraryDependencies ++= Seq("org.avaje.ebeanorm" % "avaje-ebeanorm-elastic" % "1.3.1") 
    
  • hinzugefügt application.conf:

    ebean.docstore.url="http://localhost:9200" 
    ebean.docstore.active=true 
    ebean.docstore.generateMapping=true 
    ebean.docstore.dropCreate=true` 
    
  • von application.conf entfernt

    default.driver = org.h2.Driver 
    default.url = "jdbc:h2:mem:play" 
    

Ich kann den Code nicht erhalten zu laufen, weil ich diesen Fehler erhalte:

RuntimeException: com.typesafe.config.ConfigException$WrongType: application.conf @ file:/C:/Users/../conf/application.conf: 357-360: docstore has type OBJECT rather than LIST

Ich würde alle Hinweise in der richtigen Richtung sehr schätzen. Vielen Dank!

Antwort

0

können Sie entweder:

  1. Ihre ebean Konfiguration außer Kraft setzen programmaticaly
  2. Konfiguration Fügen Sie in einer ebean Eigenschaft Datei

1 - Programmatically

package models; 

import com.avaje.ebean.config.ServerConfig; 
import com.avaje.ebean.event.ServerConfigStartup; 

public class ConfigOverride implements ServerConfigStartup { 

    public void onStart(ServerConfig serverConfig) { 
     serverConfig.getDocStoreConfig().setUrl("http://localhost:9200"); 
     serverConfig.getDocStoreConfig().setActive(true); 
     serverConfig.getDocStoreConfig().setGenerateMapping(false); 
     serverConfig.getDocStoreConfig().setDropCreate(false); 
     serverConfig.getDocStoreConfig().setCreate(false); 
     serverConfig.getDocStoreConfig().setPathToResources("conf"); 
    } 
} 

2 - Konfiguration

Sie haben Ihre ebean.docstore Eigenschaften in einem ebean.properties in conf Verzeichnis zu setzen. Aber leider, ich habe es nicht geschafft, die Anwendung Arbeit in Stufe Modus zu machen

Quelle: https://raw.githubusercontent.com/playframework/play-ebean/master/docs/manual/working/javaGuide/main/sql/JavaEbean.md

Zur Info: Ich öffnete ein Problem hier: https://github.com/playframework/play-ebean/issues/104