- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
您知道带有国际化标志的网站,单击这些网站即可获得所需的语言。这就是我想用 JSF 标签实现的任务。
编辑:当我按语言图标时没有任何反应。
这是我的 xhtml。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<f:view locale="#{lang.locale}">
<h:head>
<h:outputStylesheet name="style.css" library="css"/>
</h:head>
<h:body>
<div id="flags">
<!-- NOT WORKING !!! -->
<h:graphicImage name="#{lng.flag}" library="images" styleClass="flag">
<f:ajax event="click" execute="#{lang.swapLocale()}"/>
</h:graphicImage>
</div>
这是语言课。正如您将看到的,这是一个在两种语言(保加利亚语和英语)之间切换的简单类。
import java.io.Serializable;
import java.util.Locale;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
public class Language implements Serializable{
private static final long serialVersionUID = -5964917570659286475L;
private boolean isBulgarian = true;
private final Locale BG = new Locale("bg");
private final Locale EN = Locale.ENGLISH;
public Locale getLocale() {
if(isBulgarian) {
return BG;
} else {
return EN;
}
}
public void swapLocale() {
System.out.println("SWAP LOCALE");
switchLocale();
}
private void switchLocale() {
isBulgarian = !isBulgarian;
Locale newLocale;
if (isBulgarian) {
newLocale = BG;
} else {
newLocale = EN;
}
FacesContext.getCurrentInstance().getViewRoot().setLocale(newLocale);
}
}
这里是 faces-config.xml 和 web.xml
面孔配置:
<?xml version="1.0" encoding="UTF-8"?>
<faces-config version="2.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
<managed-bean>
<managed-bean-name>lang</managed-bean-name>
<managed-bean-class>jsfDP.language.Language</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<application>
<resource-bundle>
<base-name>language</base-name>
<var>lng</var>
</resource-bundle>
</application>
</faces-config>
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>DesignPatternsWithJSF</display-name>
<welcome-file-list>
<welcome-file>index.xhtml</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
</web-app>
最佳答案
不知道您的确切问题是什么,只是猜测:
您正在使用 AJAX 来切换语言,但我没有看到 View 被重新渲染。在这种情况下,可能会发生切换,但如果 View 未更新,您将看不到它。
假设整个页面无论如何都需要更新,我建议使用执行交换的命令按钮包装图像,并且不使用 AJAX(这里没有必要)。
关于java - JSF GraphicImage onclick 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7331985/
我在使用 Omnifaces 2.1 时遇到了问题。 我有一个图像类型byte[]存储在我的数据库中,其声明java类如下: @Lob private byte[] image; 在我的 x
我正在使用 primeFaces 在它的 detailView 中显示系列的封面图像。我的问题是,它总是显示相同的图片,除非我刷新缓存(Chrome 中的 Strg+F5)。 我的显示图片的代码如下
我在使用 Omnifaces 2.1 时遇到了问题。 我有一个图像类型byte[]存储在我的数据库中,其声明java类如下: @Lob private byte[] image; 在我的 x
我正在使用 primeFaces 在它的 detailView 中显示系列的封面图像。我的问题是,它总是显示相同的图片,除非我刷新缓存(Chrome 中的 Strg+F5)。 我的显示图片的代码如下
我想要一个按钮和一个图形图像。默认情况下,不显示图形图像。如果用户单击该按钮,则会显示图形图像(呈现 = 真)。 我可以做到,但我必须刷新页面才能看到显示的图形图像。 我想我必须使用 ajax 组件来
我从数据库加载了一个图像 byte[] 。有谁有一个关于如何将其变成 StreamedContent 的 Bean 示例吗?对象并在 中使用它? 谢谢。 最佳答案 @Named public cla
我有以下标签: 在我的文件夹中,我有以下结构: /resources/images/..... /WEB-INF/.... /*.xhtml 渲染时,该图像显示为: 但是我确实看到其他使用资源的东
当我检索服务器路径并显示到 p:graphicImage 中时标签,则不显示图像。图像加载到 webbapp 文件夹之外。图片的服务器路径是这样的\\qbsserver\Test Folder\tes
not working in jsf
我最近加入了一个 在我的 JSF 页面中,如 PrimeFaces 展示中所示。代码执行时没有任何错误,但不显示任何图像。我认为这是由于图像的路径格式不正确造成的。这是怎么引起的,我该如何解决? in
您知道带有国际化标志的网站,单击这些网站即可获得所需的语言。这就是我想用 JSF 标签实现的任务。 编辑:当我按语言图标时没有任何反应。 这是我的 xhtml。
我正在使用 h:graphicImage 使用 name 显示图像属性。现在,为了成功实现PrettyPhoto (JQuery implementation) ,我需要图像的结果路径( /javax
我正在使用 Primefaces p:graphicImage 来显示每个登录用户的图像。除了我的照片看起来像底片外,一切都很好。我做错了什么。这是我的代码:
尝试获取一个 blob 并将其变成流媒体内容。我得到了字节,它们确实被转换成 ByteArrayInputStream 并且我正在返回 StremedContent 图像,但我一直得到这个:
我使用 c:forEach 循环使用 h:graphicImage 显示图像列表。但我无法显示图像。我的页面中也有 h:commandLink 。图像必须在表单初始化时显示。但它不起作用。但点击h:c
您好,我有一个 graphicalImage,我希望在单击图像时启动 backingBean 中的一个方法。下面是我正在使用的代码片段,但它不起作用。请帮忙。 最佳答案 您需要将其包装在 中或 并
我在 index.xhtml 文件中显示图像时遇到问题。 我希望我的数据库中的链接指向图像文件,以便 或 标签可以显示它。目前仅使用本地主机。 我设法将图像保存到 c:\var\webapp\imag
我想从每次运行都会更改的 xhtml 文件在 jsf Web 应用程序中显示图形图像。上传完成后,我正在显示图像。但是发生的事情是在上传任何图像后,它总是显示我第一次上传的那个。在刷新时显示最近上传的
我正在尝试使用 p:graphicImage 标记动态显示素面中的图像,如下所示: ` 托管bean如下: @ManagedProperty("#{param.imageName}") p
not rendering image
我有一个 JSF 页面,我想在其中显示图像。图像作为 blob 存储在数据库中。实体看起来像这样: @Entity public class Player { @Id @Generat
这个问题在这里已经有了答案: Load images from outside of webapps / webcontext / deploy folder using or tag (4 个
我是一名优秀的程序员,十分优秀!