2016-06-21 13 views
1

Ich habe. Tmpl-Dateien für E-Mail-Versand-Funktionalität in Liferay geschrieben. Ich habe alle Dateien im Portlet behalten und es funktioniert gut. Ich verwende ContentUtil.get(String location) Methode, um die Datei zu lesen.Classloader Problem beim Verwenden der Vorlage außerhalb des Portlets

Jetzt muss ich alle Dateien auf dem Server verschieben. Ich denke, einen Ordner im Datenordner zu erstellen und alle Dateien in diesen Ordner zu platzieren. Aber ich bin immer unten Fehler, wenn ich ContentUtil.get(String location) verwenden:

11:24:54,619 ERROR [http-bio-8080-exec-30][ContentUtil:64] java.io.IOException: Unable to open resource in class loader C:/Users/../Desktop/.../liferay-portal-6.1.20-ee-ga2/data/templates/ABC/client/email_client_add_request_subject.tmpl 

Kann jemand mir den besten Weg legt nahe, alle Dateien von Portlet zu entfernen und es im Inneren Server platzieren?

Antwort

1

Da die Fehlermeldung bereits erläutert wird, wird ContentUtil zum Lesen aus dem Klassenpfad verwendet. Um eine Datei aus dem Dateisystem zu lesen, können Sie FileUtil verwenden:

FileUtil.read(new File(PropsValues.LIFERAY_HOME + "/data/templates/...")); 
Verwandte Themen