gpt4 book ai didi

java - 是否有从 inputText 到 URL 的任何标准 JSF 转换器?

转载 作者:搜寻专家 更新时间:2023-10-31 20:07:06 27 4
gpt4 key购买 nike

我试图在 JSF 页面中将 inputText 转换为 java.net.URL:

...
<h:form>
<h:inputText value="${myBean.url}" />
<h:commandButton type="submit" value="go" />
</h:form>
...

我的支持 bean 是:

import java.net.URL;
@ManagedBean public class MyBean {
public URL url;
}

我应该从头开始实现转换器还是有其他方法?

最佳答案

是的,您需要实现 Converter .对于这种特殊情况并不难:

@FacesConverter(forClass=URL.class)
public class URLConverter implements Converter {

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
if (value == null) {
return null;
}

try {
return new URL(value);
}
catch (MalformedURLException e) {
throw new ConverterException(new FacesMessage(String.format("Cannot convert %s to URL", value)), e);
}
}

@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
if (value == null) {
return "";
}

return value.toString();
}

}

把它放在你项目的某个地方。感谢@FacesConverter它会自动注册。

关于java - 是否有从 inputText 到 URL 的任何标准 JSF 转换器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3415445/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com