Я хочу определить путь grails.plugin.elfinder.rootDir
во внешнем файле конфигурации. я, используя следующие в Config.groovyКак определить grails.plugin.elfinder.rootDir во внешнем файле конфигурации
grails.config.locations = [ "classpath:${appName}-config.properties",
"classpath:${appName}-config.groovy",
"file:${userHome}/docm/${appName}-config.properties",
"file:${userHome}/docm/${appName}-config.groovy"]
И я создал файл appName-config.properties, в котором у меня есть следующие:
grails.plugin.elfinder.rootDir = "/home/francesco/docm_patients_doc/{patientcf}/"
у меня есть два разных вопроса в разработке и производственной среде:
развитие: когда вид с elFinder загружен Я следующее исключение
ERROR elfinder.ElfinderConnectorController - Error encountered while executing command elfinderOpenCommand Message: /home/francesco/IdeaProjects/medicalOfficeManager/"/home/francesco/docm_patients_doc/sderet45t34e345t/" Line | Method ->> 62 | getTree in grails.plugin.elfinder.filemanager.ElfinderLocalFileSystemFileManager - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 57 | getTree in '' | 44 | files . . in grails.plugin.elfinder.command.ElfinderBaseCommand | 32 | execute in grails.plugin.elfinder.command.ElfinderOpenCommand | 195 | doFilter in grails.plugin.cache.web.filter.PageFragmentCachingFilter | 63 | doFilter in grails.plugin.cache.web.filter.AbstractFilter | 1145 | runWorker in java.util.concurrent.ThreadPoolExecutor | 615 | run in java.util.concurrent.ThreadPoolExecutor$Worker ^ 722 | run . . . in java.lang.Thread
производство. при запуске приложения, я следующее исключение
grails.plugin.elfinder.rootDir не настроен
Почему у меня это два разных вопроса?
EDIT: Следующие примеры приведены here и here теперь у меня есть в обоих случаях за исключением того, что я вижу в производстве, то есть:
ERROR context.GrailsContextLoader - Error initializing the application:
grails.plugin.elfinder.rootDir is not configured
Message: grails.plugin.elfinder.rootDir is not configured
Line | Method
->> 33 | doCall in ElfinderConnectorGrailsPlugin$_closure1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 757 | invokeBeanDefiningClosure in grails.spring.BeanBuilder
| 584 | beans . . . . . . . . . . in ''
| 527 | invokeMethod in ''
| 334 | innerRun . . . . . . . . in java.util.concurrent.FutureTask$Sync
| 166 | run in java.util.concurrent.FutureTask
| 1145 | runWorker . . . . . . . . in java.util.concurrent.ThreadPoolExecutor
| 615 | run in java.util.concurrent.ThreadPoolExecutor$Worker
^ 722 | run . . . . . . . . . . . in java.lang.Thread
EDIT 2:
следующий путь в котором я заменяю местозаполнитель
def replacePatientCfInConfig(String patientcf)
{
def path = grailsApplication.config.grails.plugin.elfinder.rootDir?.replace("{patientcf}", patientcf)
elfinderFileManager.root = path
return
}
Этот метод вызывается на странице gsp, в которой я определяю <div id="elfinder"></div>
, прямо перед ним, а также до JavaScript, необходимый для elfinder
Я также модифицирована, в развитии, путь доступа к файлу конфигурации следующим образом:
def ENV_NAME = "PROPERTIES_PATH"
if(!grails.config.location || !(grails.config.location instanceof List)) {
grails.config.location = []
}
if(System.getenv(ENV_NAME)) {
println "Including configuration file specified in environment: " + System.getenv(ENV_NAME);
grails.config.location << "file:" + System.getenv(ENV_NAME)
println(grails.config.location)
} else if(System.getProperty(ENV_NAME)) {
println "Including configuration file specified on command line: " + System.getProperty(ENV_NAME);
grails.config.location << "file:" + System.getProperty(ENV_NAME)
println(grails.config.location)
} else {
println "No external configuration file defined."
}
Теперь конфигурационный файл загружен правильно , но у меня есть следующее исключение:
ERROR context.GrailsContextLoader - Error initializing the application:
grails.plugin.elfinder.rootDir is not configured
Message: grails.plugin.elfinder.rootDir is not configured
Line | Method
->> 33 | doCall in ElfinderConnectorGrailsPlugin$_closure1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 757 | invokeBeanDefiningClosure in grails.spring.BeanBuilder
| 584 | beans . . . . . . . . . . in ''
| 527 | invokeMethod in ''
| 334 | innerRun . . . . . . . . in java.util.concurrent.FutureTask$Sync
| 166 | run in java.util.concurrent.FutureTask
| 1145 | runWorker . . . . . . . . in java.util.concurrent.ThreadPoolExecutor
| 615 | run in java.util.concurrent.ThreadPoolExecutor$Worker
^ 722 | run . . . . . . . . . . . in java.lang.Thread
Где находится путь/home/francesco/IdeaProjects/medicalOfficeManager /, вы настроили его где угодно? Вы получаете какие-либо исключения из бэкэнда? вы можете вставить fullstacktrace здесь –
, что путь - это каталог приложения grails, в котором я использую elFinder. Стек-стек теперь находится в моем столбце выше – FrancescoDS
Я не знаю, где этот путь добавляется .. его не должно быть.Также обратите внимание: динамическая часть у вас там $ {patientcf} не поддерживается, насколько я помню, вы динамически устанавливаете свойство root во время выполнения http://stackoverflow.com/questions/20547566/grails-elfinder-plugin-use -placeholder-in-rootdir. Возможно, это неправильный корневой каталог –