GWT、CAS 用后总结

GWT:

com.google.gwt.user.client.Window

1、获取路径  

Window.Location.getHost();//localhost:8080 
  Window.Location.getHostName();//localhost 
  Window.Location.getHref();//http://localhost:8080/A/a.html 
2、获取路径上的参数 
Map<String, List<String>> maps = Window.Location.getParameterMap(); 
3、页面之间的跳转 
a、gwt可以通过window.open(url,name,features)实现不同页面之间的跳转,这样浏览器会打开一个新的页面; 

b、gwt还可以通过先将页面内容清空,然后重新加载新的内容实现在一个页面中显示不同内容。Window.Location.replace();


在resouce中通过request获取登录用户名:

HttpServletRequest httpServletRequest = ServletUtils.getRequest(getRequest());
this.name = httpServletRequest.getRemoteUser();
System.out.println(name);



http://www.smartclient.com/smartgwt/showcase/#main包括N多的gwt demo和完整源码。



CAS:

单点登录:

<bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
我们可以将其注释掉,换成我们希望的一个 AuthenticationHandler,比如,使用QueryDatabaseAuthenticationHandler 或 SearchModeSearchDatabaseAuthenticationHandler 可以分别选取

<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler"> 
    <property name="dataSource" ref="casDataSource" /> 
    <property name="sql" value="select password from xt_yhxx where lower(YHMC) = lower(?)" /> 
    <property name="passwordEncoder"  ref="myPasswordEncoder"/> 
</bean>

<bean id="casDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> 
    <property name="driverClassName"> 
        <value>oracle.jdbc.driver.OracleDriver</value> 
    </property> 
    <property name="url"> 
        <value>jdbc:oracle:thin:@127.0.0.1:1521:orcl</value> //用于oracle
    </property> 
    <property name="username"> 
        <value>stock</value> 
    </property> 
    <property name="password"> 
        <value>111111</value> 
    </property> 
</bean> 

需要在cas中加入casclient.jar和cas-core-support.jar.


单点登出:

普通项目(没有结合Spring Security)的可以在web.xml(客户端)中加入如下代码:

 <filter>
   <filter-name>CAS Single Sign Out Filter</filter-name>
   <filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
</filter>


<filter-mapping>
   <filter-name>CAS Single Sign Out Filter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>


<listener>
    <listener-class>
       org.jasig.cas.client.session.SingleSignOutHttpSessionListener
    </listener-class>
</listener>

cas单点退出直接链接到服务器的logout地址,为了使退出后能返回原来的项目,需要做的修改。

1.服务端cas-servlet.xml配置

<bean id="logoutController" class="org.jasig.cas.web.LogoutController" ... .../>

增加属性 p:followServiceRedirects="true"

2.退出的链接后加上?service=希望退出后返回的地址

例如 client1的退出  <a href="http://cas.google.com.cn/logout?service=http://client1.google.com.cn">退出</a>

        client2的退出  <a href="http://cas.google.com.cn/logout?service=http://client2.google.com.cn">退出</a>


你可能感兴趣的:(oracle,bean,Security,Class,gwt,features)