posts - 33, comments - 46, trackbacks - 0, articles - 2

众所周知,Oracle的数据库、中间件都可以在网上自由下载,没有任何license注册码的限制。
现在,Oracle以85亿美元收购了BEA,带来的最直接的好处是,以前严格保密的License文件现在都可以直接下载了。请看下面页面:
http://commerce.bea.com/products/all_products.jsp#WL

WebLogic Family License Keys
http://download2.bea.com/pub/license/All%20Products/BEA_WebLogic.zip

AquaLogic Family License Keys
http://download2.bea.com/pub/license/All%20Products/BEA_AquaLogic.zip

摘录部分内容如下:
========================================
    = Read Me -- BEA WebLogic License Keys =
    ========================================

Some BEA products require multiple license keys for full functionality, or use a license key which is not intuitively identified as being for that product.

Please refer to the legend below to determine which license keys are required for the BEA products you own.



BEA WebLogic Server Products (Product, Version, License ID/file)
================================================================

BEA WebLogic Server Advantage Edition    10.0 - 10.0mp1    LIC-WLSA10.txt
                    9.2 - 9.2mp3    LIC-WLSA92.txt
                    9.0        LIC-WLSA90.txt

BEA WebLogic Server Premium Edition    10.0 - 10.0mp1    LIC-WLSP10.txt
                    9.2 - 9.2mp3    LIC-WLSP92.txt
                    9.0        LIC-WLSP90.txt

BEA WebLogic Server SDK            10.x        LIC-WLSP10-DEV
                    9.2        LIC-WLSP92-DEV
                    9.1        LIC-WLSP91-DEV
                    9.0        LIC-WLSP90-DEV

BEA WebLogic Server Premium for Linux s/390 and z/Series
                    7.0sp1        LIC-WLS70-CLS-56

BEA WebLogic Server Mid-Market Edition    10.0 - 10.0mp1    LIC-WLS10-MME.txt
                    9.2 - 9.2mp3    LIC-WLS92-MME.txt


    
BEA WebLogic Platform Products (Product, Version, License ID/file)
==================================================================
                
BEA WebLogic Platform            10.2 ISV    LIC-PLAT102-ISVED
                    10.2        LIC-AUTONOMY

                            LIC-PORT102
                            
LIC-WLI102
                    9.2mp3 ISV    LIC-PLAT92-ISVED
                    9.2 - 9.2mp3    LIC-PFRM92.txt
                    8.1 - 8.1sp6    LIC-PFRM81-128.txt
                    7.0 - 7.0sp7    LIC-PFRM70-128.txt

<license
            
component="WebLogic"
            cpus
="unvalued"
            expiration
="never"
            ip
="any"
            licensee
="Customer"
            serial
="454493271161-2642447506228"
            type
="RTK"
            units
="unlimited"
            signature
="MCwCFHRYQyBkRqhyayiKQBDxfTq/bWfYAhQj+RMMeDMVxjiYhBaXuHobbHe/JA=="
        
/>

呵呵,都什么年代了,您还在Google、baidu中搜索“weblogic 破解”这样的关键字吗,用不着了。但是这并不意味着您可以免费使用这些产品,熟悉Oracle的人都知道,如果您想在企业级应用中部署这些产品,您还是得付money!

posted @ 2008-06-05 10:46 在路上... 阅读(11204) | 评论 (7)编辑 收藏

开发环境一直使用jdbc14.jar "Oracle JDBC Driver version - 9.0.2.0.0"版本连接Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 服务器,突然今天不能连接了,报错误如下:
java.sql.SQLException: 不能在 UTF8 和 UCS2 之间转换: failUTF8Conv
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:
134)
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:
179)
        at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:
1130)
        at oracle.jdbc.dbaccess.DBConversion.failUTF8Conv(DBConversion.java:
2261
)
        at oracle.jdbc.dbaccess.DBConversion.utf8BytesToJavaChars(DBConversion.j
ava:
2061)
        at oracle.jdbc.dbaccess.DBConversion.utf8BytesToString(DBConversion.java
:
1976)
        at oracle.jdbc.dbaccess.DBConversion.CharBytesToString(DBConversion.java
:
543)
        at oracle.jdbc.ttc7.TTIoer.processWarning(TTIoer.java:
334)
        at oracle.jdbc.ttc7.O3log.receive2nd(O3log.java:
523)
        at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:
278)
        at oracle.jdbc.driver.OracleConnection.
<init>(OracleConnection.java:346)

        at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.ja
va:
468)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:
314)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at JDBC.main(JDBC.java:
9)
然后更换为Oracle  11g的驱动,可以正常连接了,但是会显示下面异常
javax.management.MalformedObjectNameException: Invalid character '
'
 in value part of property
at javax.management.ObjectName.construct(ObjectName.java:529)
at javax.management.ObjectName.
<init>(ObjectName.java:1304)
at oracle.jdbc.driver.OracleDriver.registerMBeans(OracleDriver.java:
303)
at oracle.jdbc.driver.OracleDriver$
1.run(OracleDriver.java:213)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.OracleDriver.
<clinit>(OracleDriver.java:209)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:
164)
采用9i驱动还碰到下面错误
java.sql.SQLException: 违反协议
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:
134)
        at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:
179)
        at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:
1160)
        at oracle.jdbc.ttc7.O3log.receive2nd(O3log.java:
548)
        at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:
279)
        at oracle.jdbc.driver.OracleConnection.
<init>(OracleConnection.java:371)

        at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.ja
va:
551)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:
351)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
  • 最终查询资料,发现还是jdbc驱动问题,原因因该是与bug有关,因此从新从otn.oracle.com下载驱动升级解决问题。
    ojdbc6.jar的驱动版本可以运行java -jar ojdbc6.jar查看,如果是Oracle 11.1.0.6.0-Production+ JDBC 4.0 compiled with JDK6,带+号就是补丁版本,否则是没有打补丁的,仍然可能出错。
  • 我遇到的请况,采用10.2.0.4的jdbc驱动就没有问题了
  • oracle jdbc驱动下载地址如下:

Oracle Database 11g Release 1 (11.1.0.6) drivers
Oracle Database 10g Release 2 (10.2.0.4), (10.2.0.3), (10.2.0.2), (10.2.0.1.0) drivers
Oracle Database 10g (10.1.0.5), (10.1.0.4), (10.1.0.2.0) drivers
Oracle9i Release 2 (9.2.0.8), (9.2.0.5), (9.2.0.4), (9.2.0.3), & (9.2.0.1) drivers
Oracle9i Release 1 (9.0.1.4) & (9.0.1) drivers
Oracle8i Release 2 (8.1.7)

posted @ 2008-06-03 12:46 在路上... 阅读(5790) | 评论 (0)编辑 收藏

1、首先到请下载最新版本的Java Service Wrapper,点我下载
2、准备如下文件,复制到test目录,这些文件可以从下载包中找到:
wrapper.dll
wrapper.exe
wrapper.jar
3、编写wrapper.conf,也放在同一级目录下面,内容如下

# Java Application完整路径
wrapper.java.command
=java

wrapper.java.mainclass
=org.tanukisoftware.wrapper.WrapperSimpleApp

#定义程序运行的classpath
wrapper.java.classpath
.1=wrapper.jar
wrapper.java.classpath
.2=[jar file/path]

# Java Library Path (location of Wrapper.DLL or libwrapper.so)
wrapper.java.library.path
.1=.

# Java Additional Parameters
#wrapper.java.additional
.1=

# Initial Java Heap Size (in MB)
#wrapper.java.initmemory
=3

# Maximum Java Heap Size (in MB)
#wrapper.java.maxmemory
=64

# 运行的Main Class
wrapper.app.parameter
.1=

wrapper.console.format
=PM
wrapper.console.loglevel
=INFO
wrapper.logfile
=Beanskt.log
wrapper.logfile.format
=LPTM
wrapper.logfile.loglevel
=INFO

wrapper.logfile.maxsize
=0
wrapper.logfile.maxfiles
=0
wrapper.syslog.loglevel
=NONE

#window服务配置
wrapper.console.title
=samplesvr
#服务名
wrapper.ntservice.name
=samplesvr

# 显示名称
wrapper.ntservice.displayname
= sample  Service

# 描述
wrapper.ntservice.description
=sample Service

# 依赖项
wrapper.ntservice.dependency
.1=

# 启动模式:  AUTO_START or DEMAND_START
wrapper.ntservice.starttype
=AUTO_START

# 是否交互.
wrapper.ntservice.interactive
=false


4、运行测试,安装服务
》测试运行是否正常
wrapper.exe -c wrapper.conf
》安装服务
wrapper.exe -i wrapper.conf
》卸载服务
wrapper.exe -r wrapper.conf
》启动
wrapper.exe -t wrapper.conf
》停止
wrapper.exe -p wrapper.conf




posted @ 2008-01-17 15:06 在路上... 阅读(6975) | 评论 (0)编辑 收藏

      称为是最好的JAVA IDE开发平台!包括:J2EE支持、Ant、JUnit、集成CVS。包含一个智能编辑器,代码辅助和增强的自动代码工具。可提高JAVA开发人员的效率。

   JetBrains已经发布了IntelliJ IDEA 7.0,IntelliJ IDEA 7里程碑1包括许多新的特性和提高,尤其是在对Java EE的支持上,包括Spring和Hibernate,代码分析,扩展版本控制支持,Rational ClearCase集成,增强了调试,代码查询,可用性和性能

   正使用IntelliJ IDEA 6.0的用户可以免费使用IntelliJ IDEA 7.0到2007年12月31号,评估用户可以从官方网站下载并有30天的免费试用期。

   IntelliJ IDEA 7.0的新特性包括:

   1.性能提高
   IDE的启动速度得到改善
   编辑JSP的速度加快
   更快的XML的格式化

   2.对Hibernate的支持
   代码助手

   3.对Spring的支持
   代码助手
   观察依赖的可视化图表
   专门的文件设置编辑器

   4.与Eclipse的协作能力
   导入(从现有的Eclipse工程中创建IntelliJ IDEA .iml和.ipr文件 )
   导出(从现有的IntelliJ IDEA .iml文件中创建Eclipse工程文件)
   同步

   5.版本控制
   支持Rational ClearCase

   6.JavaScript
   支持JSON文件类型
   JSDoc和DoJo样式类型注释提供了更准确的完成和参数类型信息
   JSDoc和DoJo样式注释的丰富文档
   JavaScript命名空间完成/验证

一份注册码如下,Enjoy!
=============================================================

user name:在路上...
License:12008-M3132-RY84C-0GSMK-V7TNK-33XV0
customer id:12008
product id:IDEA
license type:COMMERCIAL
major version:7
minor version:0
generationDate:Mon Oct 22 16:31:47 CST 2007
expirationDate:Sun Jan 20 16:31:47 CST 2008

 

posted @ 2007-10-22 16:35 在路上... 阅读(3290) | 评论 (0)编辑 收藏

一个典型应用中,使用delphi作为客户端,J2EE服务端,两者之间用XML作为数据交换,为了提高效率,对XML数据进行压缩,为此需要找到一种压缩/解压算法能够两个平台之间交互处理,使用ZLIB算法就是一个不错的解决方案。
1、JAVA实现
在JDK中,在java.util.zip包中已经内置了ZLIB的实现,示例代码如下:
 1//解压
 2    public String decompressData(String encdata) {
 3        try {
 4            ByteArrayOutputStream bos = new ByteArrayOutputStream();
 5            InflaterOutputStream zos = new InflaterOutputStream(bos);
 6            zos.write(convertFromBase64(encdata));
 7            zos.close();
 8            return new String(bos.toByteArray());
 9        }
 catch (Exception ex) {
10            ex.printStackTrace();
11            return "UNZIP_ERR";
12        }

13    }

14
15    //压缩
16    public String compressData(String data) {
17        try {
18            ByteArrayOutputStream bos = new ByteArrayOutputStream();
19            DeflaterOutputStream zos = new DeflaterOutputStream(bos);
20            zos.write(data.getBytes());
21            zos.close();
22            return new String(convertToBase64(bos.toByteArray()));
23        }
 catch (Exception ex) {
24            ex.printStackTrace();
25            return "ZIP_ERR";
26        }

27    }

2、DELPHI中的实现
在DELPHI中,有第3方的控件可以利用来实现压缩/解压,这里我们选择VCLZIP V3.04,可以从这里下载http://www.vclzip.net
为了提高通用性,我们可以编写一个标准的DLL,就可以在Win32平台随意调用了,关键代码如下:
function Cmip_CompressStr(txt: PChar): pchar; stdcall;
var
  zip: TVclZip;
  compr: 
string;
  data: PChar;
begin
  zip :
= TVclZip.Create(nil);
  compr :
= zip.ZLibCompressString(txt);
  data :
= pchar(Base64EncodeStr(compr));
  Result :
= StrNew(data);
  zip.Free
end;

function Cmip_DeCompressStr(txt: PChar): pchar; stdcall;
var
  zip: TVCLUnZip;
  compr: 
string;
  data: PChar;
begin
  zip :
= TVCLUnZip.Create(nil);
  compr :
= zip.ZLibDecompressString(Base64DecodeStr(txt));
  data :
= StrNew(pchar(compr));
  Result :
= data;
  zip.Free
end;


在我们当前的项目中,采用的方案是Powerbuilder +DLL与J2EE平台进行xml数据交换的方式。

posted @ 2007-10-10 10:35 在路上... 阅读(3399) | 评论 (3)编辑 收藏

在这里可以下载Resin  Plugin for  IntelliJ IDEA  ,但是对于3.1X好像还不支持。http://plugins.intellij.net/plugin/?id=215
作者更新太慢,不好意思自己动手反编译修改了几个地方,现在可以支持Resin Pro 3.1.2,如果需要地可以从这里
* 下载:
Resin_2640_31.zip
* 安装:
修改文件名为Resin_2640_31.jar,复制到C:\Documents and Settings\[username]\.IntelliJIdea60\config\plugins下面
* 修改记录
1、将3.1.2的resin.conf文件命名为resin31.conf加到org\intellij\j2ee\web\resin\resin下面
2、将ResinVersion.java修改为如下方法判断是否3.1版本

public static final ResinVersion VERSION_3_X = new ResinVersion("Resin 3.x"{

        
public boolean
 isOfVersion(File file)
        
{
            
return (new File(new File(file, "lib"), "jsdk-15.jar"
)).exists();
        }


        
public String getStartupClass()
        
{
            
return "com.caucho.server.resin.Resin"
;
        }


    }
3、修改Resin3XConfigurationStrategy.java文件中部分判断http port、host的代码
原来的XML节点为root->server->host->http->port   and  root->server->host->web-app
3.1下面的XML节点为root->cluster->server-default->http->port and    root->cluster->host->web-app
改过的代码为
Element httpElement = document.getRootElement().getChild("cluster", ns).getChild("server-default", ns).getChild("http", ns);

Element host = getHost(document.getRootElement().getChild("cluster", ns), ns, webApp);

List hosts = document.getRootElement().getChild("cluster", ns).getChildren("host", ns);

public InputStream getDefaultResinConfContent()
    {
        return getClass().getResourceAsStream("/org/intellij/j2ee/web/resin/resin/resin31.conf");
    }

原来的作者没有开源,所以不好做进一步的修改完善,对于3.0的版本应该就不支持了。

posted @ 2007-09-18 11:04 在路上... 阅读(1769) | 评论 (2)编辑 收藏

PowerBuilder在显示图片方面的确是一个弱项,以前一直没有找到好的方法,如果自己用delphi写个ActiveX控件,在关闭的时候总会出现错误,实在是很郁闷,后来发现Kodak Image Edit Control就没有这个问题,而且可以支持BMP,DCX,GIF,JPG-JFIF,PCX,TIFF,WIFF,XIF等常见的图片格式,该控件在win98,win2000等环境中都已经安装好了,对于XP环境也可以简单的从Win2000移植过来。
1、鼠标放大、缩小效果
在OLE控件的other事件中加入下面的代码
 1Choose   Case   Message.Number   
 2  Case   522
  
 3      if   IntHigh(message.wordparm)   =   120   then   //
鼠标滚轮向上 
 4        if int(ole_1.object.zoom)<=20 then
 return
 5          ole_1.object.zoom= ole_1.object.zoom -10

 6      else   
 7          ole_1.object.zoom= ole_1.object.zoom+10

 8      end   if   
 9
      ole_1.object.display()
10End   Choose
2、鼠标拖动效果
如果不想选择框老是出现的话,需要加入
ole_1.object.SelectionRectangle = False
1//1.定义Instance变量
2int
 mousex,mousey
3int moveon
以下代码属于OLE控件的事件
1//Event MouseDown事件
2moveon=1
3mousex=ocx_x
4mousey=ocx_y

1//MouseMove事件
2if moveon=0 then return
3ole_1.object.ScrollPositionX =ole_1.object.ScrollPositionX+(MouseX -ocx_x)
4ole_1.object.ScrollPositionY =ole_1.object.ScrollPositionY+(MouseY -ocx_y)
5ole_1.object.refresh()
6mousex=ocx_x
7mousey=ocx_y

1//mouseUp事件
2moveon=0

posted @ 2007-04-11 17:21 在路上... 阅读(2061) | 评论 (0)编辑 收藏

网上有好多种struts+spring的集成思路,例如 http://dev.csdn.net/author/hql638/35679289a9a94e4f97e999508df064db.html
这篇文章就介绍得很详细,介绍了下面三种方法:

使用 Spring 的 ActionSupport 类整合 Structs
使用 Spring 的 DelegatingRequestProcessor 覆盖 Struts 的 RequestProcessor
将 Struts Action 管理委托给 Spring 框架
其实在使用spring+struts时,我们往往就是想使用Ioc的特性,减少业务逻辑组件之间的依赖关系,通过高度灵活的XML配置提高业务的灵活性和扩展性。步骤如下:
首先依旧加入spring的context plugin到struts-config.xml中

< struts-config >
  
< plug-in
         
className ="org.springframework.web.struts.ContextLoaderPlugIn" >
     
< set-property  property ="contextConfigLocation"
         value
="/WEB-INF/applicationContext.xml"   />
  
</ plug-in >
</ struts-config >


然后包装一下struts的DispatchAction,提供一个方法可以直接获取Spring的WebApplicationContext对象。

package  com.cngd.dataview.action; 

import  org.apache.struts.actions.DispatchAction;
import  org.springframework.web.context.WebApplicationContext;
import  org.springframework.web.struts.DelegatingActionUtils; 

/**   */ /**
 * Date: 2007-1-11 16:57:48
 *
 * 
@author  midea0978
 * 
@version  1.0
 
*/

public   class  CommDispatchAction  extends  DispatchAction  {
    
protected  WebApplicationContext getAppContext()  {
        WebApplicationContext context 
=  DelegatingActionUtils.findRequiredWebApplicationContext( this .getServlet(),  null );
        
return  context;
    }

}
 


然后自己的action可以直接从CommDispatchAction继承通过this.getAppContext();获取WebApplicationContext,这样对原有的
struts程序架构体系几乎没有太大的变化,同时可以引入spring的Ioc特性到现有系统中,这个与ActionSupport 中的
getWebApplicationContext()方法类似了,但是可以不必拘泥于在两者之间转来转去的。

package  com.cngd.dataview.action; 

import  com.spring.bo.WeatherService;
import  org.apache.log4j.Logger;
import  org.apache.struts.action.ActionForm;
import  org.apache.struts.action.ActionForward;
import  org.apache.struts.action.ActionMapping;
import  org.springframework.jdbc.core.JdbcTemplate;
import  org.springframework.jdbc.datasource.DriverManagerDataSource;
import  org.springframework.web.context.WebApplicationContext; 

import  javax.servlet.http.HttpServletRequest;
import  javax.servlet.http.HttpServletResponse; 

/**   */ /**
 * Date: 2007-1-11 16:19:15
 *
 * 
@author  midea0978
 * 
@version  1.0
 
*/

public   class  DataViewAction  extends  CommDispatchAction  {
    
static  Logger logger  =  Logger.getLogger(DataViewAction. class .getName()); 

    
/**   */ /**
     * 
@param  actionMapping
     * 
@param  actionForm
     * 
@param  request
     * 
@param  response
     * 
@return
     * 
@throws  Exception
     
*/

    
public  ActionForward genReport(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response)
            
throws  Exception  {
        String yymm 
=  request.getParameter( " yymm " );
        String opname 
=  request.getParameter( " opname " );
        logger.info(
" 参数: "   +  yymm  +   " , "   +  opname);
        WebApplicationContext ctx 
=   this .getAppContext();
        WeatherService srv 
=  (WeatherService) ctx.getBean( " weatherServiceBean " );
        srv.showWeather();
        DriverManagerDataSource ds 
=  (DriverManagerDataSource) ctx.getBean( " datasource " );
        JdbcTemplate jt 
=   new  JdbcTemplate(ds);
        String sql 
=   " select count(*) from tab " ;
        
int  rows  =  jt.queryForInt(sql);
        System.out.println(rows);
        
return  actionMapping.findForward( " viewresult " );
    }
 


}
 

posted @ 2007-01-11 17:27 在路上... 阅读(2182) | 评论 (7)编辑 收藏

通常在weblogic的config.xml文件中,对于关键字符串、密码会自动加密,例如LDAP密码、数据库JDBC连接池连接密码等。通常加密之后前面会加上{3DES}的标识。
3DES就是DES算法的增强,相关资料如下:
1、DES(Data Encryption Standard)是一种经典的对称算法。其数据分组长度为64位,使用的密钥为64位,有效密钥长度为56位(有8位用于奇偶校验)。它由IBM公司在70年代开发,经过政府的加密标准筛选后,于1976年11月被美国政府采用,随后被美国国家标准局和美国国家标准协会(American National Standard Institute, ANSI) 承认。

该技术算法公开,在各行业有着广泛的应用。DES算法从公布到现在已有20多年的历史,由于计算机能力的飞速发展,DES的56位密钥长度显得有些太短了,已经有可能通过穷举的

方法来对其进行攻击。但是除此以外,直到现在还没有发现穷举以外的能有效破译DES的方法。
2、DES算法现在已经不能提供足够的安全性,因为其有效密钥只有56位。因此,后来又提出了三重DES(或称3DES),该方法的强度大约和112比特的密钥强度相当。
这种方法用两个密钥对明文进行三次运算。设两个密钥是K1和K2,其算法的步骤如图3所示:
1. 用密钥K1进行DES加密。
2. 用K2对步骤1的结果进行DES解密。
3. 用步骤2的结果使用密钥K1进行DES加密。

首先需要找到加密的密钥,根据BEA文档可以发现是文件SerializedSystemIni.dat,查找一下安装目录就可以找到整个问见,通常系统管理员应该将该文件设置为不能直接访问,以提高安全性。
加密、解密的大致演示算法代码如下,在WebLogic 9.2下面调试通过,运行编译前应该先运行setExamplesEnv.cmd(参考)的环境变量,以保证相关类库已经被引用了。对于低版本的WebLogic,例如WebLogic 7.0/8.1可能不能直接在命令行执行,因为SerializedSystemIni必须在控制台Console环境下面才能调用,有兴趣的朋友可以自行测试看看。
 1import weblogic.security.internal.*;
 2import weblogic.security.internal.encryption.EncryptionService;
 3import weblogic.utils.encoders.BASE64Decoder;
 4import weblogic.utils.encoders.BASE64Encoder;
 5public class CrackData 
 6{
 7    public static void main(String[] args) 
 8    {
 9        byte[] salt,keys;
10        salt=SerializedSystemIni.getSalt();
11        keys=SerializedSystemIni.getEncryptedSecretKey();
12        String data="";
13        for(int i=0;i<salt.length;i++){
14            data+=salt[i]+",";
15        }

16        System.out.println("salt:"+data);
17        data="";
18        for(int i=0;i<keys.length;i++){
19            data+=keys[i]+",";
20        }

21        System.out.println("Key:"+data);
22        //EncryptionService svr=SerializedSystemIni.getExistingEncryptionService();
23        EncryptionService svr=SerializedSystemIni.getEncryptionService();
24        System.out.println(svr);
25        System.out.println(svr.getAlgorithm());
26        if(args.length>1){
27            if(args[0].equals("encrypt")){
28                byte[] edata=svr.encryptString(args[1]);
29                String s = (new BASE64Encoder()).encodeBuffer(edata);
30                System.out.println("Encode:"+s);
31            }

32            if(args[0].equals("decrypt")){
33                try{
34                byte[] edata = (new BASE64Decoder()).decodeBuffer(args[1]);
35                String txt=svr.decryptString(edata);
36                System.out.println("Decode:"+txt);
37                }
catch(Exception ex){
38                    ex.printStackTrace();
39                }

40            }

41        }

42        
43    }

44}

45

测试运行结果如下:
root@srdsh # /rdsh/bea92/jdk150_04/bin/java CrackData decrypt nMttUc5jNe9RNJXslXjbJQ==
-86,123,19,107,
-42,-28,-75,-100,31,0,25,-93,75,115,40,-3,-15,42,-53,41,-25,-13,-6,8,36,85,-81,2
8,66,-110,31,38,-29,-79,-44,-48,
weblogic.security.internal.encryption.JSafeEncryptionServiceImpl@199f91c
3DES
Decode:weblogic
root@srdsh # 
/rdsh/bea92/jdk150_04/bin/java CrackData decrypt erzD515N5z2zSnOk7uG1cYQthCbYA5OU6Bw+Zt5BsjPruTQaOZASh+ZZW4kuBGvfbZ2BXWSACbgOZ2MY4bHtpOPps/6WfZJg
-86,123,19,107,
-42,-28,-75,-100,31,0,25,-93,75,115,40,-3,-15,42,-53,41,-25,-13,-6,8,36,85,-81,2
8,66,-110,31,38,-29,-79,-44,-48,
weblogic.security.internal.encryption.JSafeEncryptionServiceImpl@199f91c
3DES
Decode:
0xa778f572127d2282247ec653147c35d4e4040aca016c6d1e06ab325af5798fca
root@srdsh #

posted @ 2006-09-07 12:35 在路上... 阅读(8446) | 评论 (1)编辑 收藏

在安装了Oracle 9i之后XDB的http默认占用了8080,ftp会占用2100端口,其实XDB就是XML Database提供的一种服务,在oracle中有一个package可以用来维护管理该服务的配置信息。这个包就是dbms_xdb.
解决方法有下面几种:
1、sqlplus "/ as sysdba"连入数据库
SQL> -- Change the HTTP/WEBDAV port from 8080 to 8081
  SQL> call dbms_xdb.cfg_update(updateXML(
    2        dbms_xdb.cfg_get()
    3      , '/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()'
    4      , 8081))
    5  /

  Call completed.


  SQL> -- Change the FTP port from 2100 to 2111
  SQL> call dbms_xdb.cfg_update(updateXML(
    2         dbms_xdb.cfg_get()
    3       , '/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()'
    4       , 2111))
    5  /

  Call completed.


  SQL> COMMIT;

  Commit complete.


  SQL> EXEC dbms_xdb.cfg_refresh;

  PL/SQL procedure successfully completed.


  SQL> -- Verify the change
  SQL> set long 100000
  SQL> set pagesize 9000
  SQL> SELECT dbms_xdb.cfg_get FROM dual;
2、移除XDB服务,将实例信息去掉
dispatchers='(PROTOCOL=TCP) (SERVICE=<ORACLE_SID>XDB)'

3、使用Oracle Enterprise Manager 中的的XML Database 配置信息中修改掉端口就可以了

posted @ 2005-12-22 13:37 在路上... 阅读(879) | 评论 (1)编辑 收藏

仅列出标题
共4页: 上一页 1 2 3 4 下一页