JSP-страница SelectOrder
JSP-страница SelectOredr (листинг 5.29) использует заранее определенную (стандартную) переменную request, чтобы получить введенную пользователем в JSP- страницу OredrDateSel ector дату. Эта дата требуется впоследствии для создания имени папки. Так как имя файла XML, содержащего сведения о заказе, включает в себя идентификатор данного заказа, все, что нужно сделать для отображения заказов, — это выделить идентификатор заказа из имени файла. Используя этот идентификатор, мы для каждого заказа создаем элемент HTML а для ссылки на JSP-страницу. Каждая ссылка содержит имя выбранного файла XML и папки, в которой этот файл содержится. Пользователь может просто щелкнуть на этой ссылке и увидеть соответствующий заказ. Например, если заказ с идентификатором 1014 был сделан 16 октября 2000 года, то ссылка будет иметь вид:
<а href="ShowOrder.jsp?dir=
Orders_2000-10-16&file=0rder_1014.xml">1014</a>
Листинг 5.29. JSP-страница SelectOrder (SelectOrder.jsp)
<%@ page import="java.io.*" %>
<html>
<head><title>Select Order</title></head>
<body>
<%
String date = request.getParameter( "date" );
File dir = new File( "Orders_" + date );
File[] files = dir.listFiles();
for( int i = 0; i < files.length; i++ ) {
String name = files[i].getName();
if( name.endsWith( ".xml" ) ) {
int start = name.indexOf( '_' ) + 1;
int end = name.indexOf( '.' );
String orderNum = name.substring( start, end );
%>
<a href="ShowOrder.jsp?dir=<%= dir %>&file=<%= name %> ">
<%= orderNum %>
</a><br />
<% }
}
%>
</body>
</html>