У меня есть файл .jsp , который работает нормально.Это может быть немного особенным в том, что он вызывает фабрику ( ArticlesFactory ), которая возвращает синглтон (но это деталь) класса Articles
(это происходит путем автоматической выборки общих документов Google, которые преобразованыв html и затем сохраняется в "... / text / en" , но это тоже деталь).
Следующее работает нормально: оно делает именно то, что мне нужно, оно извлекаетстатьи автоматически, и я могу получить доступ к своему Articles
экземпляру штрафа.
<%@ page pageEncoding="UTF-8" contentType="text/html;charset=utf-8" %>
<%@ page import="com.domain.projectname.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en">
<head></head>
<body>
<% Articles articles = ArticlesFactory.create( getServletContext().getRealPath( "text/en" )); %>
We have <%= articles.getNbItems()%>
</body>
</html>
Однако я должен преобразовать его в некоторые обозначения, которые я не знаю и не понимаю, я даже не уверен, какое название длято есть и, очевидно, у меня есть какая-то проблема.
Я не знаю, является ли это проблемой с пространством имен или есть проблема с фабричным методом фабрики ArticlesFactory
, создающим Articles
singleton:
<?xml version="1.0" encoding="UTF-8"?>
<jsp:root version="2.0" xmlns:jsp="http://java.sun.com/JSP/Page"
xmlns:c="urn:jsptld:http://java.sun.com/jsp/jstl/core">
<jsp:directive.page import="com.domain.project.ArticlesFactory"/>
<jsp:directive.page contentType="text/html; charset=UTF-8" />
We have ${variable.nbItems} <!-- What to put here !? -->
</jsp:root>
Я пробовал много вещей и не мог понять.
В основном мне нужно: - вызвать статический create метод из класса ArticlesFactory - передать егорезультат getServletContext (). getRealPath ("text / en"))
(который должен вернуть экземпляр Articles)
- , затем я хочу поставить результат getNbItems () в переменной, которую я хочу отобразить
Обратите внимание, что мне не нужно вызывать getServletContext
из любого сервлета / диспетчера: я хочу сделать это так же, как впервый рабочий пример (т. е. непосредственно из .jsp).