将Java进行到底
将Java进行到底
posts - 15,  comments - 66,  trackbacks - 0
昨天发现缺陷管理工具JIRA,目前版本是3.3.3,安装使用了一下。感觉很好。
下载地址:http://www.atlassian.com/software/jira/
我下载的是JIRA Enterprise: Evaluation版本,同时申请一个30的Licence。
破解比较简单,有关Licence的代码在atlassian-extras-0.7.10.jar中。
1、反编译包中的文件:com.atlassian.license.DefaultLicense.class。改成下面:
// Decompiled by DJ v3.8.8.85 Copyright 2005 Atanas Neshkov  Date: 2005-11-5 17:41:28
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name:   DefaultLicense.java

package com.atlassian.license;

import java.util.*;

// Referenced classes of package com.atlassian.license:
//            License, LicenseType

public class DefaultLicense
    
implements License
{

    
public DefaultLicense(Date dateCreated, Date datePurchased, String organisation, LicenseType licenseType, int users)
    
{
        
this.dateCreated = dateCreated;
        
this.datePurchased = datePurchased;
        
this.organisation = organisation;
        
this.licenseType = licenseType;
        
this.users = users;
    }


    
public Date getDateCreated()
    
{
        
return dateCreated;
    }


    
public Date getDatePurchased()
    
{
        
return datePurchased;
    }


    
public String getOrganisation()
    
{
        
return organisation;
    }


    
public LicenseType getLicenseType()
    
{
        
return licenseType;
    }


    
public String toString()
    
{
        
return licenseType.getNiceName() + " licensed to " + organisation;
    }


    
public boolean isExpired()
    
{
        
return false;

    }


    
public Date getExpiryDate()
    
{
        
return null;
    }


    
public boolean isLicenseLevel(Collection levels)
    
{
        
for(Iterator iterator = levels.iterator(); iterator.hasNext();)
        
{
            String level 
= (String)iterator.next();
            
if(getLicenseType().getDescription().toLowerCase().indexOf(level.toLowerCase()) != -1)
                
return true;
        }


        
return false;
    }


    
public int getUsers()
    
{
        
if(licenseType.requiresUserLimit())
            
return users;
        
else
            
return -1;
    }


    
public static long EVALUATION_PERIOD = 0x9fa52400L;
    
protected Date dateCreated;
    
protected Date datePurchased;
    
protected String organisation;
    
protected LicenseType licenseType;
    
private int users;

}


其实就该了两个方法:

    public boolean isExpired()
    
{
        
return false;

    }


    
public Date getExpiryDate()
    
{
        
return null;
    }

2、把编译好的class文件复制到atlassian-extras-0.7.10.jar中,覆盖原来文件。
3、启动服务器,成功。
我把我破解后的class附上:http://www.blogjava.net/Files/freddychu/DefaultLicense.zip
如果不能下,请留下email.

posted @ 2005-11-05 18:18 风萧萧 阅读(7529) | 评论 (51)编辑 收藏
Apache的网站  http://www.apache.org/ 访问不了,我正在看xmlBean啊。难道没钱请网管?呵呵 ^_^
posted @ 2005-10-27 20:30 风萧萧 阅读(1113) | 评论 (0)编辑 收藏
这周尝试使用了一下Acegi安全框架,有了些肤浅的认识。
1、这个框架还需要不断完善,而且这个项目也在不断进行中。比如:看到以前的例子,版本是0.6的,需要在web.xml里配置多个filter,到了0.8.3,就只要配置一个filter,把以前的多个filter移到了spring的配置文件中实现了。还有userCache的实现也变化了。
2、配置还是有些复杂。在spring的配置文件里要写不少bean。参见 整合前台技术acegi+spring+struts
3、如何实现角色的动态定义,我还没找到相关实现,似乎目前不支持。
4、存放用户信息在表users,授权信息放在authorities表。在我们实际开发当中往往这两个表非常大,字段很多。这里就需要做些适当的扩展咯。

这个框架整体还是非常灵活的,值得我们在些轻量级的应用中使用。
posted @ 2005-10-27 12:58 风萧萧 阅读(1449) | 评论 (3)编辑 收藏
Acegi是Spring的一个扩展框架,专注于解决应用中的安全问题。
今天花了一下午加一晚上,终于做了一个基于Acegi的自己的HelloWorld。
感觉在RDBMS的认证方式的扩展上有些不灵活。默认是基于开源的数据库HSQLDB的,实现这个机制的是JdbcDaoImpl.java类。看了sourcecode,发现类里面写死了两个SQL语句:
    public static final String DEF_USERS_BY_USERNAME_QUERY = "SELECT username,password,enabled FROM users WHERE username = ?";
    public static final String DEF_AUTHORITIES_BY_USERNAME_QUERY = "SELECT username,authority FROM authorities WHERE username = ?";

相关代码没进一步看,发现有几个Polo类,如User.java和上面的语句对应,所以,这个语句的字段不能随便改。JdbcDaoImpl类的源代码建议通过继承来扩展,我觉得不是很好,应为Sql语句在父类里写死了。在实际应用中,users表结构比这复杂的多。
想抽空,重新写一个JdbcDaoImp类,替换一下。
posted @ 2005-10-24 00:23 风萧萧 阅读(795) | 评论 (2)编辑 收藏
夜已深,网上闲逛,看到竟然有个Java的Blog群,实在太好了,这下不用老看新浪了。哈哈。
posted @ 2005-10-20 23:12 风萧萧 阅读(309) | 评论 (0)编辑 收藏
仅列出标题
共2页: 上一页 1 2 

<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(8)

随笔分类

随笔档案

文章分类

文章档案

相册

收藏夹

myfriends

opensource

搜索

  •  

最新评论

阅读排行榜

评论排行榜