2012-02-22 1 views
1

Я скомпилировал jsp с помощью java weblogic.jspc . index.jsp, он дал мне каталог и файл .class. теперь я хочу отобразить этот файл .class в web.xml. моя проблема в том, что у меня нет имя сервлета , в котором jsp преобразуется в течение его жизненного цикла.хотите предварительно скомпилировать jsp и отобразить полученный файл .class в web.xml

Я знаю, как сопоставить сервлет в web.xml, но в случае jsp у меня есть .class-файл, но у меня нет класса сервлета. пожалуйста, помогите мне, как я могу выполнить эту задачу?

ответ

1

Имя сервлета не имеет значения. Вы можете выбрать любое имя сервлета, которое вы хотите. Он просто используется для определения отношений между <servlet> и <servlet-mapping> объявлениями внутри web.xml. Просто поместите файл класса в /WEB-INF/classes обычным способом и отобразить его следующим образом (в комплекте со структурой каталогов!):

<servlet> 
    <servlet-name>indexJsp</servlet-name> 
    <servlet-class>some.weblogic.specific.packagename.GeneratedClassNameOfIndexJsp</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>indexJsp</servlet-name> 
    <url-pattern>/index.jsp</url-pattern> 
</servlet-mapping> 

indexJsp имя сервлета совершенно бесплатно на ваш выбор. Важно то, что <servlet-class> указывает правый FQN файла сгенерированного класса, а <url-pattern> указывает URL-адрес, на который вы хотите вызвать этот код.

+1

У меня есть файл _index.class в каталоге jsp_servlet. Теперь я поместил бы каталог jsp_servlet в каталог WEB-INF/classes, тогда я напишу «some.weblogic.jsp_servlet._index» между тегом моего сервлет-класса. Правильно ли я? –

+0

Нет, часть «some.weblogic» - это просто пример, потому что я понятия не имею, какой FQN он генерирует. Но вы сказали, что он генерирует только одну папку 'jsp_servlet' с уже существующим файлом класса? Если это так, то FQN будет 'jsp_servlet._index'. – BalusC