摘要: 最近做了个sso项目,将工作在遇到的问题整理了几个pdf,可惜传不上来,只有帖过来了!
目 录
1. 开发说明 - 3 -
1.1. 开发目的 - 3 -
1.2. 预期读者 - 3 -
1.3. 开发资源 -&n...
阅读全文
posted @
2008-01-07 18:22 sojust 阅读(3349) |
评论 (10) |
编辑 收藏
Lieferay和web项目中整合Liferay CAS server建立SSO,针对4.3版本进行如下操作
1、设置CAS server
首先下载cas-server WAR包,并将cas-web.war文件放入Tomcat's webapps目录下
编辑 tomcat 下的server.xml
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
2、设置CAS client
下载cas-client-2.0.11,放至lib下
3、设置数字签名
在java环境中用使用keytool 进行设置
D:\Java\jdk1.5\bin>keytool -genkey -alias tomcat -keypass changeit -keyalg RSA
输入keystore密码: changeit
您的名字与姓氏是什么?
[Unknown]: localhost
您的组织单位名称是什么?
[Unknown]:
您的组织名称是什么?
[Unknown]:
您所在的城市或区域名称是什么?
[Unknown]:
您所在的州或省份名称是什么?
[Unknown]:
该单位的两字母国家代码是什么
[Unknown]:
CN=localhost, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown 正确吗?
[否]: y
keytool -export -alias tomcat -keypass changeit -file %FILE_NAME%
keytool -import -alias tomcat -file %FILE_NAME% -keypass changeit -keystore %JAVA_HOME%/jre/lib/security/cacerts
D:\Java\jdk1.5\bin>keytool -export -alias tomcat -keypass changeit -file c:/server.cart
输入keystore密码: changeit
保存在文件中的认证 <c:/server.cart>
D:\Java\jdk1.5\bin>keytool -import -alias tomcat -file c:/server.cart -keypass changeit -keystore c:/cacerts
输入keystore密码: changeit
Owner: CN=localhost, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown
发照者: CN=localhost, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown
序号: 46d28617
有效期间: Mon Aug 27 16:06:47 CST 2007 至: Sun Nov 25 16:06:47 CST 2007
认证指纹:
MD5: 0E:27:55:74:D0:56:E8:39:B8:0D:58:1E:69:7B:C6:C5
SHA1: AD:7F:90:87:2B:18:99:07:DE:A6:A8:78:90:9F:86:CB:18:A8:67:03
信任这个认证? [否]: y
认证已添加至keystore中
4、设置Liferay Portal
<filter>
<filter-name>CAS Filter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://localhost:8443/cas-web/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas-web/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serviceUrl</param-name>
<param-value>http://localhost:8080/c/portal/login</param-value>
</init-param>
</filter>
5、test SSO
相关问题汇总:
http://wiki.liferay.com/index.php/Single_SignOn_-_Integrating_Liferay_With_CAS_Server#Instructions_for_Liferay_4.2
posted @
2007-08-27 16:35 sojust 阅读(1779) |
评论 (1) |
编辑 收藏
摘要: 1.
log4j
的配置文件
Log4j
支持两种配置文件格式,一种是
XML
格式的文件,一种是
Java
特性文件
lg4j.properties
(键
=
值)。
...
阅读全文
posted @
2007-03-30 21:51 sojust 阅读(1205) |
评论 (4) |
编辑 收藏
使用Runtime调用bat文件处理外部角本时一般使用 Runtime.getRuntime.exec(command)就可以了
如果批处理是使用db2的db2cmd时,dos窗口则会弹出db2命令窗口执行相关的处理角本,如果需要等特此批处理命令执行完成后再执行下面的流程就会出现相应的问题,如下例流程,将客户端将生成数据备份文件上传至服务器
因waitFor() 只能控制第一个dos窗口的进程,而无法控制下一个窗口,程序则会同步执行,当数据还没生成时就已经进行压缩处理了,当然会出现错误。
所以在执行批处理时将批出理文件隐式执行
实施方法代码如下
/** */
/**
* 执行批处理
*
@param command
*/
public
void
runBat(String command)
{
Process child
=
null
;
try
{
Runtime rt
=
Runtime.getRuntime();
child
=
rt.exec(command);
//以下代码为控制台输出相关的批出理
String line
=
null
;
BufferedReader reader
=
new
BufferedReader(
new
InputStreamReader(child.getInputStream()));
while
((line
=
reader.readLine())
!=
null
)
{
System.out.println(line);
}
reader.close();
//
等待刚刚执行的命令的结束
while
(
true
)
{
if
(child.waitFor()
==
0
)
break
;
}
}
catch
(Exception ex)
{
child.destroy();
ex.printStackTrace();
}
}
主程序如下:
public
void
exportBat(String zipPath)
{
//
执行批处是导出到目录下
this
.runBat(
"
db2cmd -c -w -i exportdb.bat
"
);
//
压缩文件生成打包
this.doZip(zipPath
,zipPath
+"
\\test
.rar"
);
//
上传
this
.ftpUp("目录");
//
删除客户端目录生成的文件
this
.delFile(zipPath
);
}
说明:
1、runBat中执行db2cmd时需加上-c -w -i script
2、dozip,ftpUp,delFile方法省略...
posted @
2007-01-18 21:28 sojust 阅读(3751) |
评论 (2) |
编辑 收藏
在项目开发过程中,客户往往要要将其使用的
excel
存储的数据导入到其它数据库中,下面的工作主要是将
excel
导入各种数据库的汇总
准备:在数据库中创建从
excel
要导入的表结构;
一、
excel
导入
db2
的各种方法
1
:使用文本方式导入
1
)、将
access
导出具有标准格式符的文本文件,例如以逗号分隔的文本文件
2
)、在
db2
的命令行处理器中,连接上数据库,用
import
语句导入,语句如下:
import from table.txt of del modified by coldel
,
insert into table
同理,导出命令:
export to table.txt of del modified by coldel, select * from table
2:使用csv文件 方式导入
1)、把excel文件另存为table.csv文件
2)、在db2的命令行处理器中,连接上数据库,用import 语句导入
import from "d:\table.csv" OF DEL messages "d:\msg.out" INSERT INTO table
二、
excel
导入
oracle
的各种方法
1
、与
db2
导入方法相同
2
、使用
sqlldr
装载数据:
1
)、先把
Excel
另存为
.csv
格式文件,以逗号数据字段分隔的文本文件,如
table.csv
2
)、编写一个
insert.ctl
,用
sqlldr
进行导入
!
insert.ctl
内容如下:
load data
infile 'table.csv'
append into table tableName
fields terminated by ','
(field1,field2,field3,...fieldn)
3
)、执行命令:
sqlldr user/password control=insert.ctl
3
、使用
PL/SQL
如果你的单个文件不大全选
COPY ,
用
PL/SQL Developer
运行
SQL
语句
select * from table for update
或者在左侧树形菜单中选中相应的表格,点击右键,在弹出式菜单中点击
"Edit Data".
然后打开表格数据上方的锁
,
再按一下加号
,
添加一行新空行
.
鼠标点到第一个空格然后粘贴
. COMMIT
即可
.
posted @
2006-11-22 14:04 sojust 阅读(3310) |
评论 (1) |
编辑 收藏
摘要: 好久没写东西了。最近无聊,发点上来!用ajax首先先写一个调用的function一、ajaxFuntion.js
//
定义XMLHttpRequest对象实例
var http_request
=
false
...
阅读全文
posted @
2006-11-09 15:25 sojust 阅读(673) |
评论 (0) |
编辑 收藏