private int compareStr( Object o1, Object o2 ) { return collator.compare( o1, o2 ); } } ) );
	private void sortJar( final int columnIndex, final boolean asc )	{		try		{			jarViewer.setSorter( new ViewerSorter( new RuleBasedCollator( ( (RuleBasedCollator) Collator.getInstance( ) ).getRules( ) ) {				public int compare( String source, String target )				{					int result = 0;					if ( columnIndex == 1 )						result = super.compare( getFileName( source ),								getFileName( target ) );					else if ( columnIndex == 2 )						result = super.compare( getFilePath( source ),								getFilePath( target ) );					if ( !asc )						return result;					else						return result *= -1;				}			} ) );		}		catch ( ParseException e )		{			// TODO Auto-generated catch block			e.printStackTrace( );		}		refreshJar( );	}