Есть ли способ запустить страницу JSF без сборки всего проекта?
Есть ли способ просто запустить одну страницу, чтобы я мог увидеть сгенерированный HTML (и CSS), как он будет выглядеть для пользователя, даже если он по сути не работает? Автономная страница JSF как бы. Я хочу посмотреть, как я настраиваю формы, чтобы увидеть, имеют ли они смысл с точки зрения пользователя, прежде чем на самом деле кодировать поля формы. Я использую Maven и NetBeans, но не уверен, что последний актуален.
3 ответа
Если вы используете JSF2 Facelets, то вы можете просто создать свои формы с простым HTML и использовать jsfc
атрибут для указания соответствующего компонента JSF, который должен использоваться во время выполнения JSF. Например
<form jsfc="h:form">
<label jsfc="h:outputLabel" for="input1" />
<input type="text" jsfc="h:inputText" id="input1" value="#{bean.input1}" required="true" />
<span jsfc="h:message" for="input1" />
<input type="submit" jsfc="h:commandButton" value="Submit" action="#{bean.submit}" />
</form>
Чтение Facelets <ui:xxx>
Документация taglib также должна дать некоторое представление. Например
<span jsfc="ui:remove">
This is present during design time, but is removed during JSF runtime.
</span>
<div jsfc="ui:repeat" value="#{bean.items}" var="item">#{item}</div>
<table>
<tr jsfc="ui:repeat" value="#{bean.items}" var="item">
<td>#{item.id}</td>
<td>#{item.name}</td>
</tr>
</table>
И тот факт, что вы можете использовать <ui:composition>
указать начало и конец композиции Facelet (например, включаемый файл или файл тегов). Любой контент снаружи будет игнорироваться во время выполнения, но вы все равно можете поместить немного HTML во время разработки, чтобы вы могли легко просматривать готовые проекты, частью которых должен быть включаемый файл или файл тега.
<!DOCTYPE html>
<html lang="en"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
>
<head>
...
</head>
<body>
...
<ui:composition>
Here you can design content of include file or
tag file as if it's part of the whole design.
</ui:composition>
...
</body>
</html>
Все это позволяет вам просматривать проекты HTML/CSS без необходимости выполнения JSF.
Вы не можете выполнить страницу JSF напрямую, не развернув встроенное приложение. Вы должны развернуть его, и только тогда вы сможете отобразить выполненную страницу.
Инструменты JBoss для Eclipse имеют элементарную поддержку JSF-тегов в своем визуальном редакторе.
Я немного поиграл с ним, но он не полностью поддерживал наши старые страницы, поэтому я оставил это на этом. Это может работать лучше при запуске с пустой страницы.