2015-03-11 6 views
1

У меня есть пример Eclipse JSF, где класс ExampleController не может найти файл Bundle.properties. Вот динамический снимок веб-проект, который был использован для создания проекта JSF,Не удается найти файл в Eclipse

Dynamic Web Project

Вот снимок файловой структуры проекта. Вы можете увидеть файл пучки в папке свойств,

Project file structure

Вот снимок кода класса. Обратите внимание на имя файла в Methode getBundle,

@ManagedBean(name = "exampleController") 
@RequestScoped 
public class ExampleController { 
    private String exampleProperty; 

    * Creates a new instance of ExampleController 
    */ 
    public ExampleController() { 
     exampleProperty = "Used to instantiate the bean."; 
     FacesMessage facesMsg = new FacesMessage(FacesMessage.SEVERITY_INFO, 
         ResourceBundle.getBundle("WebContent/properties/Bundle.properties").getString("ExampleMessage"), null); 
    FacesContext.getCurrentInstance().addMessage(null, facesMsg); 
} 

Наконец, вот снимок ошибки при запуске кода на сервере Tomcat,

Runtime Tomcat Server Error

Я попытался несколько комбинаций имена файлов, но продолжать получать файлы, не найденные ошибки при запуске сервера. Что мне не хватает?

С наилучшими пожеланиями, Стив Мэнсфилд

ответ

0

Попробуйте играть с пути. «WebContent» на вашем пути кажется неправильным. Обычно путь ресурса разрешается относительно WEB-INF или текущего местоположения файла-класса. Вы также можете попытаться поместить свой каталог свойств в несколько мест, чтобы узнать, попадает ли он в один из них. :)

Кроме того, если вы можете получить доступ к тому, где построенный проект фактически запущен из «физически» (если он не из этих самых файлов), возможно, вы обнаружите, что файл свойств не копируется с другим файлы. (Есть ли у вас ассамблею развертывания в настройках проекта Если это так, проверить его?).

UPDATE: Если вам нужно просто открыть файл свойств, проверить это один из: getResourceAsStream() is always returning null ... Я не знать, если ваша папка особенная в некотором роде.

Чаще всего, когда Tomcat начинает действовать странно в Eclipse, я узнаю, что сборка развертывания f **** d вверх. (Происходит с Mavenized-проектами. Eclipse и m2eclipse - не лучшие друзья.)
Такая ситуация соответствует сценарию «работает при развертывании на рабочий сервер, а не при запуске из Eclipse».

+0

Я согласен с вами, комментировать «возможно, не в WebContent». Я взял его и побежал снова без везения. Я взял файл из папки и поместил его в несколько мест в проекте, но все равно не повезло. В любом случае, я могу видеть, где Томкат действительно ищет его? – skmansfield

+0

Это может быть в рабочей области/.metadata/.plugins \ org.eclipse.wst.server.core/tmp0 или tmp1 и т. Д. (То есть, если вы используете Tomcat из Eclipse) –

+0

Да, я запускаю eclipse с Tomcat. – skmansfield

Смежные вопросы