我在我的JSF应用程序中使用Servlet过滤器.我的应用程序中有三组Web页面,我想在Servlet过滤器中检查这些页面的身份验证:
我的文件夹
/Admin/ *.xhtml
/Supervisor/*.xhtml
/Employee/*.xhtml
Run Code Online (Sandbox Code Playgroud)
我写得web.xml像
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>com.ems.admin.servlet.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/Employee/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/Admin/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/Supervisor/*</url-pattern>
</filter-mapping>
Run Code Online (Sandbox Code Playgroud)
但要求如此
http://localhost:8080/EMS2/faces/Html/Admin/Upload.xhtml
Run Code Online (Sandbox Code Playgroud)
没有进入过滤器.
我必须为这3个文件夹提供安全性.
如何解决这个问题呢 ?
我试图使用hsqldb-2.3.4从Spring应用程序连接.
我使用以下详细信息创建了数据库
Type : HSQL Database Engine Standalone
Driver: org.hsqldb.jdbcDriver
URL: jdbc:hsqldb:file:mydb
UserName: SA
Password: SA
Run Code Online (Sandbox Code Playgroud)
我在"MYDB"模式下创建了一个名为ALBUM的表
在spring配置文件中:
<bean id="jdbcTemplate"
class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">
<constructor-arg ref="dbcpDataSource" />
</bean>
<bean id="dbcpDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:hsqldb:file:mydb" />
<property name="username" value="SA" />
<property name="password" value="SA" />
</bean>
Run Code Online (Sandbox Code Playgroud)
在我的春季控制器中,我正在做 jdbcTemplate.query("SELECT * FROM MYDB.ALBUM", new AlbumRowMapper());
它给了我例外:
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [SELECT * FROM MYDB.ALBUM]; nested exception is java.sql.SQLSyntaxErrorException: user lacks privilege …Run Code Online (Sandbox Code Playgroud) 两者SCJP 6和OCJP 6考试是否相同?我本月将要写OCJP 6考试,但我正在准备Kathy Seirra的SCJP 6考试.
为了练习,我正在准备Kathy seirra "OCP Java SE 6 programmer study guide".好吗?
我对这句话感到困惑"SCJP 6" , "OCJP 6", "OCP Java SE 6 Programmer".那些是一样的吗?
如果同样为什么这么多不同的名字?
先感谢您?请指导我.
可能重复:
Java字符串和StringPool
我创建了两个字符串
String s1="MyString";
String s2=new String("MyString");
System.out.println(s1==s2);
Run Code Online (Sandbox Code Playgroud)
它打印"false".我们知道字符串池不会为同一个字符串文字创建两个对象.
那么这里发生了什么?它在字符串池中为相同的字符串文字"MyString"创建了两个不同的字符串对象(文字).
我知道 equals()方法true在这里返回.
但是当我们使用==它时应该比较两个引用,它们应该引用String常量池中的相同String对象.
为什么即使找到匹配项,它也不会引用String池中的现有String对象?
我正在开发一个JSF应用程序。仅适用于授权用户。
因此,每当有人尝试通过URL访问任何页面时,都应重定向到Login。
我正在使用XHTML作为前端。并使用JSF框架。
我将Session Bean存储在Login Bean中。
不幸的是,我使用了Servlet和静态页面“ response.sendRedirect()”。
提前致谢。
我认为一种解决方案是将所有页面都放在WEB-INF中,但是一个问题是我正在使用resonse.sendRedirect(),而且我正在使用带有facelets的模板。
请给我建议。
文件夹中的“我的登录”页面
"/Common/Login.xhtml"
和一些页面
"/Admin/*.xhtml"
Run Code Online (Sandbox Code Playgroud)
和一些页面
`"Employee/*.ahtml"`
Run Code Online (Sandbox Code Playgroud)
如何为这2个文件夹Admin和Employee设置筛选器
我给了像这样,但要求不要加入Filter Servlet
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>/faces/Admin/*</url-pattern>
<url-pattern>/faces/Employee/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>`
Run Code Online (Sandbox Code Playgroud)
如果我这样给
<url-pattern>/*</url-pattern>
Run Code Online (Sandbox Code Playgroud)
它会进入无限循环,请为此问题提供解决方案