Я думал об идее использования Ajax вместо TagLib. Самый элегантный способ: использование аннотации Java.
Идея заключается в том, что дизайнеры или кто угодно может создать HTML без тега, просто используя «стандартные» теги HTML с идентификатором или именем, и вызвать Javascript. Таким образом, можно использовать любой WYSIWYG, разработчик не должен заботиться о формате HTML или о его дизайне.
Во многих (по крайней мере, с открытым исходным кодом) WYSIWYG не показывают ярлыки тегов в этом конечном результате (или имеют шаблон), поэтому трудно «предварительно просмотреть». Другая причина в том, что разработчик должен знать, что Java и HTML / TagLibs не должны быть обязательными, поскольку мы получили CSS и AJAX.
Это должно работать так:
MyClass.java :
</p>
<pre><code>import ...
// Use the ResourceBundle resource[.{Locale}].properties
@Jay2JI18n(resourceBundle="org.format.resource",name="MyClassForm")
public class MyClass {
private Integer age;
private String name
private Date dob;
private salary;
@Jay2JLabel(resource="label.name")
@Jay2JMaxLength(value=50,required=true,)
@Jay2JException(resource="exception.message")
public String getName() {
...
}
public void setName(String name) {
if ( name.trim().equal("") ) {
throw new Exception("Name is required");
}
}
/* Getter and setter for age */
...
@Jay2JLabel(message="Salary")
@Jay2JFormat(format="##,###.00",language="en")
@Jay2JFormat(format="##.###,00",language="pt_BR")
// or you could use that to access a property of the ResourceBundle
//@Jay2I18nResource(resource="money.format")
public Date getSalary() {
...
}
/* Setter for salary and getter/setter for the rest */
...
}
page.html :
</p>
<pre><code><html>
<head>
<SCRIPT>
</SCRIPT>
</head>
<body>
<form onload="Jay2J.formalize(this)">
</form>
</body>
</html>
из этого может быть HTML с заполненными полями;
PageWithFields.html :
</p>
<pre><code><html>
<head>
<SCRIPT>
</SCRIPT>
</head>
<body>
<form action="myfavoritewaytopostthis" onsubmit="return Jay2J.validate(this)" onload="Jay2J.formalizeExistField(this)">
<label>Name</label><input type="text" name="name" id="name" />
<label>DOB</label><input type="text" name="dateOfBirth" id="dob" />
<label>Salary</label><input type="text" name="salary" id="salary" />
<input type="submit" />
</form>
</body>
</html>
Таким образом, Аннотация (без XML, это похоже на HTML в том смысле, что это всего лишь изменение файла, а XML - это не Java) будет определять способ обработки HTML. Таким образом, разработчик может прекратить разработку на HTML и использовать только JAVA (или JavaScript), как вы думаете, это правильная идея?