1. 安装JDK1.5还有安装JDK1.4。环境变量中设置JAVA_HOME和JRE_14还有一些相关的CLASSPATH和PATH属性。
2. 下载jboss。
3. 下载MYSQL。
4. 下载ant,设置ANT_HOME和ANT_OPTS。
5. 下载以下的opencrx需要的文件:
* openMDX/Core (e.g. openmdx-1.16.4-core.jre-1.4.zip)
* openMDX/Portal (e.g. openmdx-1.16.4-core.jre-1.4.zip)
* openMDX/Security (e.g. openmdx-1.16.4-security.jre-1.4.zip)
* openMDX/WebSphere (e.g. openmdx-1.16.4-websphere.websphere-6.zip)
————-http://www.openmdx.org/downloads.htm
* opencrx-1.10.0-core.CRX.jre-1.4.zip
————-http://www.opencrx.org/downloads.htm
6. 解压缩opencrx-1.10.0-core.CRX.jre-1.4.zip,目录情况:
opencrx-1.10.0
apache
codehaus
core
etc
build.properties
build.xml
LICENSE
README
RELEASE-NOTES
version.properties
itseasy
jre-1.4
novell
pdfbox
source-archive
———
其中,除了core目录是主目录之外,其他的目录为需要的库文件。
7. 在opencrx-1.10.0目录下新建opt目录,解压缩其他openMDX的目录到opt目录下。
8. 定位到opencrx-1.10.0/core目录下,运行ant。
ant config
可以看到系统的配置信息。
9. 在core目录下,输入:
ant install-src
可以看到所有的java文件和配置信息。
10. 在core目录下,输入:
ant assemble
可以生成发布包,包位于opencrx-1.10.0\jre-1.4\core\deployment-unit目录下。直接copy该包到jboss下即可。
11. 导入到eclipse时,直接定位到opencrx-1.10.0\core目录即可。需要加入以下的库,否则提示出错信息:
opencrx-1.10.0\jre-1.4\core\lib
opencrx-1.10.0\opt\openmdx-1.16.4\java2\jre-1.4\endorsed\lib
opencrx-1.10.0\opt\openmdx-1.16.4\java2\jre-1.4\enterprise\lib
opencrx-1.10.0\opt\openmdx-1.16.4\java2\jre-1.4\extension\lib
opencrx-1.10.0\opt\openmdx-1.16.4\jre-1.4\portal\lib
opencrx-1.10.0\opt\openmdx-1.16.4\jre-1.4\security\lib
opencrx-1.10.0\opt\openmdx-1.16.4\jre-1.4\core\lib
opencrx-1.10.0\novell\jre-1.4\jldap\lib
opencrx-1.10.0\pdfbox\jre-1.4\pdfbox\lib
opencrx-1.10.0\codehaus\jre-1.4\janino\lib
或者可以尝试在opencrx-1.10.0\core下新建子目录lib,并且把所有的包都copy到该目录下,直接import所有包即可。
12. 数据库位于:opencrx-1.10.0\core\src\sql目录下。根据使用的数据库选择相关的文件夹,把数据库文件导入数据库。
———导入的时候记得,系统需要创建用户system用户,密码是manager。并且该用户对于系统拥有对于数据库crx-crx的操作权。
13. jboss的配置:
加入以下内容到jboss-4.0.5.GA\server\default\conf\login-config.xml:
————————
<application-policy name="opencrx-core-CRX">
<authentication>
<login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="sufficient">
<module-option name="dsJndiName">java:/jdbc_opencrx_CRX</module-option>
<module-option name="principalsQuery">SELECT c.passwd FROM security_Principal p, security_Credential c WHERE (p.object_id LIKE ‘principal/CRX/Root/Default/%’) AND (p.credential = c.object_id) AND (p.name = ?)</module-option>
<module-option name="rolesQuery">SELECT r.name, ‘Roles’ FROM security_Principal_N pg, security_Principal p, security_Principal_N pn, security_Role r WHERE (p.object_id = pn.object_id) AND (pn.is_member_of = pg.object_id) AND (pg.granted_role = r.object_id) AND (p.object_id LIKE ‘principal/CRX/Root/Default/%’) AND (p.name = ?)</module-option>
<module-option name="ignorePasswordCase">true</module-option>
<module-option name="hashCharset">UTF-8</module-option>
<module-option name="hashEncoding">base64</module-option>
<module-option name="hashAlgorithm">MD5</module-option>
</login-module>
<login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule" flag="sufficient" >
<module-option name="usersProperties">users.properties</module-option>
<module-option name="rolesProperties">roles.properties</module-option>
</login-module>
</authentication>
</application-policy>
————————
新建jboss-4.0.5.GA\server\default\conf\users.properties,内容为:
————————
admin-Root=rootSecret
admin-Standard=adminSecret
guest=guest
————————
新建jboss-4.0.5.GA\server\default\conf\roles.properties,内容为:
————————
admin-Root.Roles=OpenCrxRoot
admin-Standard.Roles=OpenCrxAdministrator
guest.Roles=OpenCrxUser
————————
根据需要copy相关的connector(opencrx-1.10.0\core\src\connector)到发布目录下。例如jboss和MYSQL。
那就copy
opencrx-1.10.0\core\src\connector\jboss-3\jdbc-opencrx-CRX-mysql-ds.xml到
jboss-4.0.5.GA\server\default\deploy目录下。
然后启动jboss,就可以了。
1. 根据
http://www.opencrx.com.cn/bbs/dispbbs.asp?boardID=6&ID=545&page=1 以上的URL叙述中知道,许多语言文件都被删除了,主要:
opencrx-core-CRX-Web.ear\opencrx-core-CRX.war\WEB-INF\config\code\Root
opencrx-core-CRX-Web.ear\opencrx-core-CRX.war\WEB-INF\config\texts
opencrx-core-CRX-Web.ear\opencrx-core-CRX.war\WEB-INF\config\ui\Root
对应于OpenCRX的目录:
opencrx-1.10.0\core\src\data\org.opencrx\code\Root
opencrx-1.10.0\core\src\data\org.opencrx\texts
opencrx-1.10.0\core\src\data\org.opencrx\ui\Root
然后修改opencrx-core-CRX-Web.ear\opencrx-core-CRX.war\WEB-INF\web.xml,把其他语言的配置删除。
对应于:opencrx-1.10.0\core\src\data\org.opencrx\WEB-INF\web.xml。
2. 根据以上的url提到,某些功能运行在MYSQL上可能出现功能上的错误,中文翻译者希望使用DB2作为数据库。
———-作者原文:
经过测试发现,在新版本中,使用未经优化的MySQL数据库速度、性能都无法满足正式环境中的CRM应用,因此,建议大家如果要在生产环境中使用,那么在试用傻瓜包之后,改为使用DB2 express-c数据库(在免费数据库中无需优化条件下,性能最好的数据库)。
现在Demo服务器的数据库已经改为DB2,大家可以从响应时间上比较一下,性能上有多少提高?
另外,在使用MySQL时,我们也发现有些功能上的Bug,在使用DB2之后就消失了,我们估计这是MySQL版本和设置的问题,因此不支持某些数据库操作。所以,即使从使用全部的opencrx功能的角度上讲,也推荐大家使用其他数据库。
———-
3. 标题和底部的信息修改。中文版本在header和footer两部门都加上一些广告信息,这部份源码主要位于:
opencrx-1.10.0\core\src\data\org.opencrx\html\
4. 第一次登陆的时候需要用超级管理员的身份,必须由管理员给其他用户分配权限,否则即使已经是合法用户还是无法登陆。
但是allpackage傻瓜包中仅保留了超级管理员的帐号。
用户密码保存于:jboss-4.0.5.GA\server\default\conf\users.properties
用户角色保存于:jboss-4.0.5.GA\server\default\conf\roles.properties
但是仔细看过openCRX_Quick_Start1.10.pdf这个文档,用户guest是在管理员登陆之后创建之后方可使用的。
一个比较奇怪的事情,没有找到相关的密码更改。而且对于密码的机制不了解。
自己制作的版本和服务器上的版本还有allpackage里边的一样,没有找到相关的密码更改机制。
最后在文档 openCRX_Installation_JBoss-4.pdf 的4.1中提及。如果在系统修改了login-config.xml
就是采用文件和数据库的密码保存。采用文件格式的密码不允许修改
采用数据库的密码允许修改。在“User Homepages=>Sercurity=>change password”。
如果在properties文件中定义了的用户,则不给与修改密码的选项。
=================
安装DB2。
1. 下载db2:
http://www-306.ibm.com/software/data/db2/express/download.html2. 安装db2。记住。使用的时候,用户为系统用户。所以db2的话需要用系统的用户。并在系统中设置密码。而不是在数据库中。
3. 根据
http://www.opencrx.org/opencrx/1.10/DB2/openCRX_Installation_IBMDB2-9.html 新建数据库并把数据导入。
这一步需要注意,必须使用正确的用户来建立数据,否则查询的时候提示没有相关的权限。
(我在原先的系统中使用控制中心创建数据,结果模式那边显示我的主机名,但是查询的时候jboss报错,根据错误代码,原因就是权限问题。
之后我使用db2admin用户登录,然后创建数据,之后切换回去正常用户那边,连接正常。
)
单单根据登录和实际页面的装载情况,DB2的效率还是比MYSQL好的。就测试的结果。
4. 需要把DB2中的包(我采用db2 express 9),位于{DB2}/java下的
db2java.zip(需要改名为db2java.jar)
db2jcc.jar
db2jcc_license_cu.jar
copy到jboss-4.0.5.GA\server\default\lib目录下。