这回把粗糙的代码 和示例发上来了,并简单说一下部署这个示例的方法 (没有传依赖的jar包, commons-codec-1.3.jar 46,725 commons-logging-1.0.4.jar 38,015 ehcache-1.2.3.jar 208,048 hessian-3.0.20.jar 235,464 spring.jar 2,545,110 ) 这个sso组件 由于比较小巧 所以没有把 server 和 client分离 部署子认证中心(server端) 附件中的示例默认配置是 server端的 你可以把他部署为任意的应用名字 例如 部署到 http://IP1:8080/s3otest 其他的都不需要修改。 部署子应用(client端) 同样的代码 用WebContent\WEB-INF\client.config下的文件 替换 WebContent\WEB-INF\下的文件 然后再部署为任意的名字 例如 部署成 http://IP2:8080/s3oclient1 再然后去修改 WEB-INF\下的S3OClientContext.xml, 根据实际情况修改下面内容 <!-- 认证中心的 URL --> <property name="serverURL" value="http://127.0.0.1:8080/s3os" /> <!-- 当前应用的 URL (一定要是 认证中心 能访问到的)--> <property name="clientURL" value="http://127.0.0.1:8080/s3oc1" /> 修改为 <property name="serverURL" value="http://IP1:8080/s3otest" /> <property name="clientURL" value="http://IP2:8080/s3oclient1" /> 然后就ok了。 依次类推 再部署若干个子应用(client端) 如http://IP2:8080/s3oclient2 ,http://IP2:8080/s3oclient3... 记得修改相应的S3OClientContext.xml文件。 然后启动这些应用就可以了 然后可以从任意一个子应用登陆 例如 http://IP2:8080/s3oclient1 由于是首次访问,系统自动跳转到 登录页面 我提供的默认的验证模块很简单 只要 你的用户名和密码一样 并且长度大于等于3 就可以登陆 登陆后 你可以尝试着去访问其他的应用的页面 (需要修改一下 示例jsp文件中提供的连接 或者手动打另外一个应用的url) |