6.3.9.0 (2015/11/06)

	[#NAME 行の区切り文字判定が間違っていたので修正]
		fukurou.process.Process_TableReader#readName(BufferedReader reader)

	[1行にまとめる]
		fukurou.util.ZipArchive#compress(File dir,File zipFile)

	[ExcelModel#getValues(int) では、nullは返さない]
		fukurou.model.ExcelModel#getValues(int rowNo)
		fukurou.process.Process_GrepChangeExcel#action(LineModel data)

	[Java 8 ラムダ式に変更]
		fukurou.model.ExcelModel#textConverter(Map convMap)
		fukurou.model.POIUtil#main(String[] args)
		fukurou.model.POIUtil#excelReader2(File file,TextConverter conv)
		hayabusa.taglib.ExcelFileTag#getExcelText(ExcelModel excel)

	[Map.keySet() ではなく、Map.entrySet() を使う様に変更]
		fukurou.taglet.DocletVerCheck#writeContents(ClassDoc[] classes,DocletTagWriter writer,String version)
		hayabusa.common.HybsSystem#sysEntry(String key)
		hayabusa.mail.DefaultMailManager#getUserIds(List addressList)
		hayabusa.mail.MailPattern#setDstWord()
		hayabusa.resource.UserAccessTable#makeAccessDB(Map guiMap,String systemId,String userId,String lang)
		hayabusa.resource.UserInfo#saveLastRequestValues()

	[Map.keySet() ではなく、Map.values() を使う様に変更]
		hayabusa.mail.DefaultMailManager#commitMailDB()
		hayabusa.mail.DefaultMailManager#setMailDst(List invalidAddr)

	[PDF変換を一括処理できるように、コマンド追加]
		fukurou.model.JacobUtil#main(String[] args)

	[Returning 'ZERO' may expose an internal array.(PMD)]
		plugin.query.DBConstValue_GJ#getLogicalDeleteKeys()
		plugin.query.DBConstValue_GJ#getLogicalDeleteVals()
		plugin.query.DBConstValue_VV#getLogicalDeleteKeys()
		plugin.query.DBConstValue_VV#getLogicalDeleteVals()
		plugin.query.DBConstValue_ZY#getLogicalDeleteKeys()
		plugin.query.DBConstValue_ZY#getLogicalDeleteVals()

	[StringUtil.yenN2br は、null を返しません]
		hayabusa.resource.LabelData#LabelData(String[] data)

	[TabLinkTagの取得タイミングを、#doEndTag() に移す]
		hayabusa.taglib.TabListTag#doEndTag()
		hayabusa.taglib.TabListTag#release2()

	[TagBuffer を使用するように変更]
		fukurou.util.XHTMLTag#iframe(Attributes attri,String urlEncode)

	[Use block level rather than method level synchronization.(PMD)]
		fukurou.db.DatabaseConfig#getDbidInfo()
		fukurou.db.DatabaseConfig#getCodeKeyVal()
		fukurou.db.TransactionImpl#getConnection(String dbid)
		fukurou.db.TransactionImpl#close()
		fukurou.db.TransactionImpl#finish()
		fukurou.db.TransactionImpl#connClose(Connection conn,String dbid)
		fukurou.util.AbstractObjectPool#init(int minsize,int maxsize,boolean limit,int limitTime)
		fukurou.util.AbstractObjectPool#newInstance()
		fukurou.util.AbstractObjectPool#release(Object obj)
		fukurou.util.AbstractObjectPool#remove(Object obj)
		fukurou.util.AbstractObjectPool#size()
		fukurou.util.AbstractObjectPool#isEmpty()
		fukurou.util.AbstractObjectPool#clear()
		fukurou.util.AbstractObjectPool#objectFinal(Object obj)
		fukurou.util.AbstractObjectPool#objectInitial(Object obj)
		fukurou.util.AbstractObjectPool#toString()
		fukurou.util.AbstractObjectPool#init(int minsize,int maxsize,boolean limit)
		fukurou.util.HybsTimerTaskManager#cancelTask(String name)
		fukurou.util.HybsTimerTaskManager#clear()
		fukurou.util.HybsTimerTaskManager#toArray()
		fukurou.util.HybsTimerTaskManager#size()
		fukurou.util.HybsTimerTaskManager#contains(String nm)
		fukurou.util.HybsTimerTaskManager#addTask(HybsTimerTask task)
		fukurou.util.HybsTimerTaskManager#cancelTask(int key)
		fukurou.util.LogWriter#close()
		fukurou.util.LogWriter#getPrintWriter()
		fukurou.util.LogWriter#init(String url)
		fukurou.util.LogWriter#log(String message)
		fukurou.util.LogWriter#log(Throwable th)
		hayabusa.report2.QueueManager_DB#create()
		hayabusa.taglib.JspInitTag#getCount()

	[Use block level rather than method level synchronization.(PMD)

//	 * @return 正常:true/異常:false]
		fukurou.db.TransactionImpl#commit()
		fukurou.db.TransactionImpl#rollback()

	[helpMapの初期化を、initメソッドに変更する]
		hayabusa.taglib.HelpTag#doEndTag()
		hayabusa.taglib.TopMenuTag#doEndTag()
		hayabusa.taglib.TopMenuTag#release2()

	[keysのnullチェックの仕方が間違っていた]
		fukurou.transfer.TransferRead_SAMCB#setKeys(String[] keys)

	[labelLoader.getLabelDataは、nullを返しません]
		hayabusa.resource.ResourceManager#getLabel(String key)
		hayabusa.resource.ResourceManager#getLabel(String key,String[] args)
		hayabusa.resource.ResourceManager#getShortLabel(String key)
		hayabusa.resource.ResourceManager#getLongLabel(String key)
		hayabusa.resource.ResourceManager#getRawShortLabel(String key)
		hayabusa.resource.ResourceManager#getDescription(String key)
		hayabusa.resource.ResourceManager#getDescription(String key,String[] args)
		hayabusa.resource.ResourceManager#getLabelData(String key)

	[null になっている可能性があるメソッドの戻り値のnullチェックを追加]
		fukurou.util.FileMap#init(String dir,String path,Set resourcePaths)
		fukurou.util.FileUtil#getFileList(File dir,boolean sort,List list,boolean isCopy)
		fukurou.util.FindClassFiles#findFilename(File file)
		fukurou.util.ZipArchive#compress(File[] files,File zipFile,String encording)

	[resourceをローカル変数にして引数で渡すようにする]
		plugin.table.TableFilter_DBARG_OUT#execute()
		plugin.table.TableFilter_DBARG_OUT#makeHeadLine(String objName,ResourceManager resource)

	[switch 文の2つの case のために同じコードを使用している(findbugs)]
		hayabusa.resource.ResourceManager#getExtLabel(String key)
		hayabusa.taglib.ExcelFileTag#setAttriObject(String key,String[] data)

	[synchronized 処理を外す]
		fukurou.model.JacobUtil#copyExcel(File inFile,File outFile)
		fukurou.model.JacobUtil#excel2PDF(File inFile,File outPdf)
		fukurou.model.JacobUtil#toPrint(File inFile,String printer)

	[thのnullチェックを先に行う]
		fukurou.util.StringUtil#ogErrMsg(String msg,Throwable th)

	[valueのnullチェックの仕方が間違っていた]
		fukurou.util.ColorMap#getColorInstance(String value)

	[もう少し判りやすくする]
	(処理速度は落ちてます。)
		fukurou.model.ExcelModel#parseDouble(String value)
		fukurou.util.StringUtil#parseDouble(String value)

	[コンストラクタで初期化されていないフィールドを null チェックなしで利用している(findbugs)]
		fukurou.business.AbstractBizLogic#call(String subLogicName,String key,String val,int rw,ArrayTableModel tbl)
		fukurou.business.AbstractBizLogic#seq(String seqName)
		fukurou.business.AbstractBizLogic#execSQL(String sq,int rw,ArrayTableModel tbl)
		fukurou.model.ArrayDataModel#getValues(int row)
		fukurou.model.ArrayDataModel#getValue(int row,int clm)
		fukurou.model.ArrayDataModel#getNativeType(int clm)
		fukurou.model.TableModelHelper#endRow()
		fukurou.process.Process_FileSearch#makeLineModel(int rowNo)
		fukurou.util.DateSet#changeForm(String form)
		fukurou.util.Shell#isEnd()
		fukurou.util.Shell#exitValue()
		fukurou.util.Shell#toString()
		fukurou.util.URLConnect#getConnection()
		fukurou.util.URLConnect#getReader()
		fukurou.util.URLConnect#getInputStream()
		fukurou.xml.XML2TableParser#startElement(String uri,String localName,String qName,Attributes attributes)
		fukurou.xml.XML2TableParser#characters(char[] ch,int offset,int length)
		fukurou.xml.XSLT#setOutData(String outData)
		hayabusa.db.DBMetaData#makeDBTableModel(ResultSet resultSet)
		hayabusa.filter.FileResponseWrapper#flushBuffer()
		hayabusa.filter.GZIPResponseWrapper#flushBuffer()
		hayabusa.html.TableFormatter#getLocationSize()
		hayabusa.html.TableFormatter#getLocation(int no)
		hayabusa.html.TableFormatter#setNoDisplay(int no)
		hayabusa.html.TableFormatter#getFormat(int no)
		hayabusa.html.TableFormatter#getSystemFormat(int row,int loc)
		hayabusa.html.TableFormatter#getType(int no)
		hayabusa.io.AbstractTableReader#setTableDBColumn(String[] names)
		hayabusa.io.AbstractTableReader#setTableColumnValues(String[] values,int rowNo)
		hayabusa.mail.MailManager_DIRECT#setTableDBColumn(DBTableModel table,String[] names)
		hayabusa.report2.ExecQueue#getOutputName()
		hayabusa.report2.SOfficeProcess#close()
		hayabusa.report2.SOfficeProcess#getDispatcher()
		hayabusa.report.AbstractDBTableReport#getValue(String key)
		hayabusa.report.AbstractDBTableReport#setHeaderFooter()
		hayabusa.report.DBTableReport_Excel#close()
		hayabusa.report.DBTableReport_Excel#changeSheet()
		hayabusa.report.ExcelLayout#addData(String clm,int edbn,String value)
		hayabusa.taglib.BackGamenTag#makeButtonTag()
		hayabusa.taglib.ColumnCheckTag#makeEntryErrorMessage(ErrorMessage errMsg)
		hayabusa.taglib.CookieTag#saveCookies(int maxAge)
		hayabusa.taglib.CookieTag#loadCookies()
		hayabusa.taglib.DataCheckTag#checkUnique(DataCheckTag.ErrMessageManager manager)
		hayabusa.taglib.DatalistTag#doEndTag()
		hayabusa.taglib.EditConfigTag#makeEditTable(String viewClms)
		hayabusa.taglib.EditConfigTag#makeLabelRow(boolean useSum)
		hayabusa.taglib.EditConfigTag#makeColumnRow(String clm,boolean isView,boolean useSum,DBEditConfig config)
		hayabusa.taglib.EditConfigTag#isNumberClm(String clm)
		hayabusa.taglib.ForwardTag#getUrlEncode()
		hayabusa.taglib.HiddenTag#makeTag()
		hayabusa.taglib.JspCreateTag#execute()
		hayabusa.taglib.PopupTag#makePopup(boolean useKey)
		hayabusa.taglib.ReadTableTag.ColumnAction#clmAction(String[] vals,DBColumn[] dbClms,int row)
		hayabusa.taglib.SubmitTag#getHiddenTag(String command,String lbl,String valueLink)
		hayabusa.taglib.TableFilterTag#getParameterRows()
		plugin.daemon.Daemon_MailReceive#startDaemon()
		plugin.daemon.Daemon_URLConnect#startDaemon()
		plugin.table.TableFilter_DBSELECT#execute()
		plugin.view.ViewForm_HTMLSeqClmTable#getTableHead()
		plugin.view.ViewForm_HTMLSeqClmTable#getHeadLine(String thTag)
		plugin.view.ViewForm_HTMLSeqClmTable#create(int startNo,int pageSize)

	[コンストラクターを止めて、初期化メソッドに変更する]
		fukurou.util.FileMap#init(String dir,String path)
		fukurou.util.FileMap#init(String dir,Set resourcePaths)
		fukurou.util.FileMap#init(String dir)

	[セルに値をセットするときに、セルタイプを考慮する]
		fukurou.model.ExcelModel#textConverter(TextConverter conv)

	[内部Propertiesオブジェクトではなく、複製して返します]
		fukurou.db.ConnectionPool#createInstance()
	//	 * @return 内部Propertiesオブジェクト
		fukurou.db.EDbid#getProps()

	[判定条件の記述が間違っていた]
		hayabusa.html.AbstractViewForm#setGroupClass(String grpCls)

	[引数にTableFormatterを渡して、処理の共有化を図る]
		plugin.view.ViewForm_CustomData#getTableFoot(TableFormatter footerFormat)
		plugin.view.ViewForm_CustomData#create(int startNo,int pageSize)
		plugin.view.ViewForm_HTMLTable#getTableFoot(TableFormatter footerFormat)

	[整数値演算なので、Math.round 不要]
		hayabusa.servlet.HybsAdmin#getInfomation()

	[文字列配列を toString() する]
		hayabusa.taglib.ValueTag#actionExec(String action,String value)

	[新規作成]
		fukurou.util.FileMap#isInit()
		fukurou.util.FileMap#clear()

	[新規追加]
		fukurou.mail.MailTX.MyAuthenticator#MyAuthenticator(String authUser,String authPass)
		fukurou.mail.MailTX.MyAuthenticator#getPasswordAuthentication()
		fukurou.model.ExcelModel#sheetSelected(boolean isSelect)
		fukurou.model.ExcelModel#sheetCopy(TextConverter conv,String shtName)
		fukurou.model.POIUtil#setValue(Cell oCell,String val)
		fukurou.util.HybsTimerTaskManager#taskCleaning()
		hayabusa.common.HybsContextListener#containerEvent(ContainerEvent event)

	[未チェック/未確認のキャスト対応(findbugs)]
		fukurou.model.EventReader_XLS.ExcelListener#processRecord(Record record)
