2015-09-11 3 views
1

Я занимаюсь разработкой веб-приложения Eclipse, RAP, и хотел бы сохранить файлы ресурсов (конфигурация и т.д.) в WEB-INF и загружать их с чем-то вроде этого:Eclipse RAP или RWT Запуск конфигурации, доступ к ресурсам WEB-INF?

Properties properties = new Properties(); 
properties.load(getServletContext().getResourceAsStream("/WEB-INF/foo.properties")); 

войны создается с Gradle построить и это выглядит нормально при развертывании на автономный Tomcat.

Что я хотел бы сделать, так это заставить это работать в моем цикле разработки внутри Eclipse. То есть запустите проект с конфигурацией запуска RAP или RWT и получите все содержимое в WEB-INF, установленное на Jetty.

Следующие инструкции помогли мне, по крайней мере, у меня есть своя web.xml в каталоге выполнения используется Jetty:

http://wiki.eclipse.org/RAP/FAQ#How_do_I_develop_an_RWT_standalone_application_with_RAP_.3E.3D_1.5

..\my_workspace\.metadata\.plugins\org.eclipse.rap.tools.launch.rwt\my.rap.app\web-app\WEB-INF\web.xml 

Но я не могу найти способ для любых других файлов в WEB-INF будет развернут при запуске внутри Eclipse. То, что я надеюсь достичь это:

..\my_workspace\.metadata\.plugins\org.eclipse.rap.tools.launch.rwt\my.rap.app\web-app\WEB-INF\foo.properties 

Кто-нибудь знает, возможно ли это с конфигурацией запуска RWT или RAP в Eclipse?

Есть ли лучший подход к удобному созданию и отладке приложения RAP, которое загружает ресурсы из WEB-INF в Eclipse?

+0

Вы пытались использовать конфигурацию RWT lauch с опцией «run from web.xml»? Я не уверен, но вероятность того, что пристань рассматривает его как обычное веб-приложение при запуске из web.xml. – ralfstx

+0

@ralfstx: Да, я запускаю тестовое приложение из web.xml. Этот web.xml действительно развертывается в каталоге времени выполнения Jetty. Но любые другие файлы в WEB-INF игнорируются. При запуске приложения RWT я могу вручную скопировать файлы в WEB-INF ('.. \ eclipse_workspace_rcp_rap \ .metadata \ .plugins \ org.eclipse.rap.tools.launch.rwt \ my.test.app \ web-приложение \ WEB-INF \ foo.properties'), и все работает так, как я надеялся. – StaticNoiseLog

ответ

1

К сожалению, функция копирования ресурсов в каталог WEB-INF никогда не попала в базу кода запуска RWT.

Поскольку это было бы полезным расширением пусковой установки RWT, вы можете захотеть записать enhancement request.

Я не могу думать о обходном пути другого, чем положить файл свойства на пути к классу и читать оттуда:

Properties properties = new Properties(); 
properties.load(getClass().getResourceAsStream("foo.properties")); 

Если ресурсы предназначены быть расположены в каталоге WEB-INF не меняется много вы также можете попытаться скопировать их вручную в my_workspace\.metadata\.plugins\org.eclipse.rap.tools.launch.rwt\my.rap.app\web-app\WEB-INF

+0

Спасибо большое! Я буду использовать один из двух подходов, возможно, скрипт Ant для автоматизации копирования ресурсов. – StaticNoiseLog

+0

Я подал запрос на повышение: [https://bugs.eclipse.org/bugs/show_bug.cgi?id=477349](https://bugs.eclipse.org/bugs/show_bug.cgi?id=477349) – StaticNoiseLog