将wicket面板中的链接转换为超链接
我正试图找到一种方法,自动将面板中的链接转换为超链接。例如,用户输入是: 在这里你可以找到我的精彩例子: 在wicket中是否可以为每个节点添加锚元素http://... 文本,因此上面的示例将输出 在这里你可以找到我的精彩例子:将wicket面板中的链接转换为超链接,wicket,Wicket,我正试图找到一种方法,自动将面板中的链接转换为超链接。例如,用户输入是: 在这里你可以找到我的精彩例子: 在wicket中是否可以为每个节点添加锚元素http://... 文本,因此上面的示例将输出 在这里你可以找到我的精彩例子: 相反,一种方法是扩展和覆盖onComponentTagBody 比如: public class AnchorizeLabel extends Label { public AnchorizeLabel(String id, String body) {
相反,一种方法是扩展和覆盖onComponentTagBody 比如:
public class AnchorizeLabel extends Label {
public AnchorizeLabel(String id, String body) {
super(id, body);
}
@Override
protected void onComponentTagBody(MarkupStream stream, ComponentTag tag) {
String newBody = createAnchors(getDefaultModelObjectAsString());
replaceComponentTagBody(stream, tag, newBody);
}
private String createAnchors(String body) {
// regex magic to create links
}
}
您也可以使用自定义或,但我更喜欢标签方法。一种方法是扩展和覆盖onComponentTagBody 比如:
public class AnchorizeLabel extends Label {
public AnchorizeLabel(String id, String body) {
super(id, body);
}
@Override
protected void onComponentTagBody(MarkupStream stream, ComponentTag tag) {
String newBody = createAnchors(getDefaultModelObjectAsString());
replaceComponentTagBody(stream, tag, newBody);
}
private String createAnchors(String body) {
// regex magic to create links
}
}
您也可以使用自定义或自定义方法来完成此任务,但我更喜欢标签方法。您可以使用Wicket的内置方法 从Javadoc: 如果显示的数据中包含电子邮件地址或web URL,则可以自动将这些数据作为超链接显示,而无需采取任何操作来转换该数据
你可以使用Wicket内置的 从Javadoc: 如果显示的数据中包含电子邮件地址或web URL,则可以自动将这些数据作为超链接显示,而无需采取任何操作来转换该数据