Release Note Ver 2001.1.09 2003/07/28 FIXED BUGS bug id tbs00026 The servlet name is not put out in the servlet log file. new functions / modified functions com.ngMAT.DSV new methods : setColumnDelimiter(String),getColumnDelimiter(), setDontTrim(boolean),getDontTrim(). com.ngMAT.Log new method : clone(). com.ngMAT.ngmObject new methods : getShortProperty (String),getShortProperty (String,short), getIntProperty (String),getIntProperty (String,int),getLongProperty (String), getLongProperty (String,long),getBooleanProperty (String), getBooleanProperty (String,boolean),getProperty (String,String). com.ngMAT.servket.EZSPresetProperties new preset property : "HTMLTemplate.CustomTag.cp_sym.Handler". new classes com.ngMAT.HTML.ezscustomtag.CellPhoneSymbol ELIMINATED FUNCTIONS / CLASSES etc. Ver 2001.1.08 2003/07/15 FIXED BUGS new functions / modified functions com.ngMAT.Common.AttributeParser When the value is quated with double cuatations, a '\' before '"' will escape the '"' but one more '\' before '\' will escape the escape. new method : addSpaceChars (String). com.ngMAT.Common.CommonRuntimeException If the instance is created by the constructor CommonRuntimeException(Throwable), stack trace of the nested exception will be output on stack tracing. com.ngMAT.Common.CoolProperties a new method : getProperty (String,String),remove(String),removeProperty(String). #undefine keyname will cancel the defined property "keyname". com.ngMAT.Common.ngmDBObject a new method : getDBDateStringAsDate(java.sql.Date). com.ngMAT.Common.ngmDB2Object a new method : getDBDateStringAsDate(java.sql.Date). com.ngMAT.Common.ngmPGDBObject a new method : getDBDateStringAsDate(java.sql.Date). com.ngMAT.HTML.CustomTag a new method : getContentAsTemplate(). com.ngMAT.HTML.EZSCustomTag a new method : getContentAsTemplate(EZServletContext). com.ngMAT.HTML.FileResource new methods : setLogicalFilename(String),getLogicalFilename(),getFile(), setSetFilename(). getFilename() will return a logical filename if the logical filename is set and will return a physical filename if the logical filename is NOT set. You can specify the encoding type of the filename with the property "EZServlet.FileResource.Filename.Charset". com.ngMAT.HTML.HTMLComponent a new method : setParameters(CoolProperties),removeAllSubElements(). com.ngMAT.HTML.HTMLElement com.ngMAT.HTML.InsertionTag You can specify a leading string and/or following string of tag using tag attribute, e.g., [[tagname leader="" follower=""/]] will replaced : tag value. If the tag doesn't have any output value, the leader and the follower will not appear. new methods : getContentAsTemplate(),getContentAsTemplate(Properties),(EZServletContext). com.ngMAT.HTML.ParsedTable new methods : addRow(Row),setHeader(HTMLTemplate),setHeader(Row),getHeaderString(),getRowString(). com.ngMAT.HTML.customtag.Empty com.ngMAT.HTML.table.Cell new methods : parse(String),parse(String,ParsePosition),getSubElementAsTemplate(). com.ngMAT.HTML.table.Row new methods : parse(String),parse(String,ParsePosition),addCellAt(Cell,int),addCell(Cell). com.ngMAT.servlet.EZServletContext new methods : setSessionBranchValue(String,String,Object), getSessionBranchValue( String,String),getSessionBranch(String),createSessionBranch(), createMultiPartContentHandler(),createMultiPartContentHandler(int). com.ngMAT.tools.Bcp You can specify the timing of BcpRecordProcessor#doProcess(..) call If you specify the BcpRecordProcessor for bcp in. new classes com.ngMAT.servlet.MultiPartContentHandler com.ngMAT.servlet.Part ELIMINATED FUNCTIONS / CLASSES etc. com.ngMAT.tools javadoc comments are added to classes in "tools" package. Ver 2001.1.07 2003/06/06 FIXED BUGS new functions / modified functions com.ngMAT.Common.StringConverter new methods : removeChars (String,String), replaceCRLF2BR (String), replaceSpace2NBSP (String). com.ngMAT.Common.CoolProperties new methods : getShortProperty (String), getShortProperty (String, short), getIntProperty (String), getIntProperty (String, int), getLongProperty (String), getLongProperty (String, long), getBooleanProperty (String), getBooleanProperty (String, boolean). new classes ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.06 2003/05/16 FIXED BUGS bug id tbs00024 CoolProperties.put(String,String) duplicates data with the same key in its vector image. bug id tbs00025 If the property "EZServlet.Request.Charset" is not set, a NullPointerException will be thrown on calling EZServletContext#urlencode(String). new functions / modified functions com.ngMAT.Common.CoolProperties() new methods : save(), save(String), save (PrintWriter), setProperty(String,String). the inner class FileTreeNode gets java.io.Serializable. com.ngMAT.Common.ngmPGDBObject the value of SYSDATE_STRING was changed from "datetime('now'::abstime)" to "now()". com.servlet.EZServletConfig new methods : getServlet(String). com.servlet.EZServletContext new methods : getInputStream(). com.ngMAT.tools.HttpPing new command line option -c. If -c is given, it will print the response of the target url to standard out. new classes ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.05 2003/04/15 FIXED BUGS bug id tbs00023 template objects of RepeatableElement instance in the HTMLTemplate instance does not inherit filter definition. new functions / modified functions com.servlet.EZServletContext / EZServletConfig You can specify 2.3 as an EZServlet.TargetServletSpec property value. The context handler for 2.3 disables character conversion of the Web application container if you specify the Servlet.Request.Charset property. new classes ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.04 2003/02/25 FIXED BUGS new functions / modified functions com.ngMAT.Bcp new methods : initBcpOut(), doBcpOut(), wrapupBcpOut(), initBcpIn(), doBcpIn(), wrapupBcpIn(). new methods : getAssignedConnection(), setBcpOutResultSet(ResultSet), setBcpOutWriter(PrintWriter), getBcpOutResultSet(), getBcpOutWriter(), setBcpInReader(BufferedReader), getBcpInReader(), createBcpOutSelectSQL(), openBcpOutFile(), closeBcpOutFile(), openBcpInFile(), closeBcpInFile(). new methods : wrapup(), getApplicationName(), getTargetTableName(), getTargetFileName(). com.ngMAT.PGBcp timestamptz type fields will be processed as same as timestamp type fields. com.ngMAT.DSV doubled double quotations will be processed as an escaped double quotation while parsing double-quated items. com.ngMAT.servlet.EZServletContext new methods setTemporaryData (String, Object), getTemporaryData (String). new classes com.ngMAT.HTML.XMLHandler com.ngMAT.HTML.XMLHandlerContainer com.ngMAT.tools.BcpRecordProcessor ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.03 2003/01/28 FIXED BUGS bug id tbs00022 template objects created by HTMLTemplate.createHTMLTemplateFromString(EZServletContext,String) does not inherit filter definition. new functions / modified functions com.ngMAT.Common.ngmObjectFunction new constants S_DOUBLE_QUOTATION, S_SINGLE_QUOTATION, C_DOUBLE_QUOTATION, C_SINGLE_QUOTATION. com.ngMAT.Common.DSV new methods addWithQuotation(String), addWithQuotation(int,String). com.ngMAT.servlet.EZServlet will check if an HttpSession is assigned to the context before session information dump for debug. com.ngMAT.servlet.EZServletConfig The property "EZServlet.PropertiesWatcher.Config" turns on auto-reloading of servlet configuration. com.ngMAT.servlet.EZServletContext new method hasSession(). new methods getTemplateWithoutPathTranslation(), getStringWithoutPathTranslation(). new classes com.ngMAT.Common.FileWatcher com.ngMAT.Common.event.Event com.ngMAT.Common.event.FileModifiedEvent com.ngMAT.Common.listener.FileModifiedEventListener ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.02 2003/01/10 FIXED BUGS bug id tbs00021 EZSCustomTag instance inside the row template of ParsedTable are not processed as exptected. new functions / modified functions com.ngMAT.Common.CoolProperties new constructor CoolProperties(String filename, Properties init_value), CoolProperties(String filename, KeyValuePackage[] init_value), CoolProperties(KeyValuePackage[] init_value). com.ngMAT.Common.Log When the file name is the same, an output file instance will be shared between Log instances. com.ngMAT.HTML.EZSCustomTag new method addHTMLTemplateEventListener (HTMLTemplateEventListener). com.ngMAT.HTML.HTMLTemplate new method getRepeatableElement(String). new method createHTMLTemplateFromString (EZServletContext context, String TemplateString). com.ngMAT.HTML.ParsedTable is now a subclass of RepeatableElement. new method getElementTemplate(). com.ngMAT.servlet.EZServletConfig You can specify the template path handler class with the property "EZServlet.TemplatePathHandler". You can get the servlet instance name from the property "__SERVLET_INSTANCE_NAME__" or the instace variable "instance_name" of EZServletConfig. Will load preset properties values from EZSPresetProperties before loading servlet properties file. new method getDebugLog(). com.ngMAT.servlet.EZServletContext new methods getTemplateRealPath (String name), getTemplateRealPath (String root_path, String name). The methods getTemplate (String) and getString (String) will use getTemplateRealPath (String name) to determin the real path of the file. new method getTemplate (String root_path, String name). new method getString (String root_path, String name). new method sendRedirectWithUrlEncoding (String url).This will call HttpServletResponse#encodeRedirectUrl independently of the property. new method isRequestedSessionIdFromCookie(). new methods getServerName(), getServerPort(), getProtocol(), getScheme(). new methods getCompleteRequestURL(), completeURL (String uri). new classes com.ngMAT.Common.LogFile a log file handler. com.ngMAT.HTML.EZSTemplateEventListener an event listener to listen ezs_loaded or ezs_fix event. com.ngMAT.HTML.RepeatableElement an HTML component to process a repeatable element in the HTML template. com.ngMAT.HTML.ezscustomtag.Cookie a custom tag to create a cookie string. com.ngMAT.HTML.ezscustomtag.Parameter a custom tag to create a http parameter string. com.ngMAT.HTML.ezscustomtag.JSessionID a custom tag to create a jsessionid string. com.ngMAT.HTML.ezscustomtag.Here a custom tag to create a request url string. com.ngMAT.HTML.customtag.Now a custom tag to create a timestamp string with the current time. com.ngMAT.servlet.EZRedirectorServlet, EZRedirectorServletConfig redirector servlet. com.ngMAT.servlet.EZSPresetProperties preset value list of properties for EZServlet with following values: HTMLTemplate.CustomTag.cookie.Handler=com.ngMAT.HTML.ezscustomtag.Cookie HTMLTemplate.CustomTag.param.Handler=com.ngMAT.HTML.ezscustomtag.Parameter HTMLTemplate.CustomTag.jsessionid.Handler=com.ngMAT.HTML.ezscustomtag.JSessionID HTMLTemplate.CustomTag.now.Handler=com.ngMAT.HTML.customtag.Now HTMLTemplate.CustomTag.here.Handler=com.ngMAT.HTML.ezscustomtag.Here com.ngMAT.servlet.TemplatePathHandler template path handler interface. com.ngMAT.servlet.templatepathhandler.DefaultPathHandler default template path handler without any translation. com.ngMAT.servlet.templatepathhandler.AgentSensitivePathHandler template path handler which translates the path depending on UserAgent. ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.01 2002/12/22 FIXED BUGS bug id tbs00020 The header template and the row template of ParsetTable don't inherit the property "Application.Tag.EscapeChar" from its including HTMLTemplate. new functions / modified functions com.ngMAT.Common.DSV new constructors DSV() and DSV(Properties). new methods add(String) and add(int, String). com.ngMAT.Common.StringConverter mew method static String convertText2HTMLStyle (String src). mew method static String replaceStringIgnoreCase (String src, String key, String value). com.ngMAT.servlet.EZServlet will send the Content-Length header for ByteArrayComponent response. com.ngMAT.servlet.EZServletConfig If you specify the property "EZServlet.OrganizeCookie=false", EZServlet will turn its cookie sending mechanism off and will use the function of the servlet container. The default is true and EZServlet create cookie headers by itself. com.ngMAT.servlet.EZServletContext addCookie (...) to specify "secure" flag. com.ngMAT.HTML.ParsedTable a new constructor ParsedTable (String, int , int , Properties). com.ngMAT.HTML.HTMLString a new constructor HTMLString(StringBuffer). com.ngMAT.HTML.HTMLTemplate new methods setTagValue (String name, StringBuffer buffer), convertText2HTMLStyle(). com.ngMAT.Mail.SimpleMailMessage Some of class variables was changed into instance variables. a new constuctor with Properties, EZServletConfig, EZServletContext. property "Mail.AppendRecipients" enables to switch the append mode of setTo, setCc and setBcc. com.ngMAT.servlet.EZServletContext new methods String urlencode (String value) and String urlencode (String value, String enc_type). new classes ELIMINATED FUNCTIONS / CLASSES Ver 2001.1.00 2002/12/02 FIXED BUGS bug id tbs00017 NullPointerException is thrown on loading an HTML template which has custom tags or [[#table]] tags whose names have upper case alphabet characters with EZServletContext#getTemplate(String). bug id tbs00018 com.ngMAT.servlet.EZServlet doesn't throw the suitable exception but throws NullPointerException when it cannot find the properties file for itself and its situation is unclear. bug id tns00019 bcpUpdate(..) and loadDSVFile(..) of class com.ngMAT.Tools.Bcp doesn't support the property Bcp.File.Encoding. new functions / modified functions com.ngMAT.Common.CoolProperties new constructor new CoolProperties (Properties). com.ngMAT.Common.ngmDBObject getBooleanCondition (String column_name, boolean value). com.ngMAT.Common.ngmPGDBObject getBooleanCondition (String column_name, boolean value). com.ngMAT.Common.DBConnection removeConnection (Connection). com.ngMAT.HTMLComponent getLongParameter (String name), getLongParameter (String name, long default_value) getIntParameter (String name), getIntParameter (String name, int default_value) getBooleanParameter (String name), getBooleanParameter (String name, boolean default_value). com.ngMAT.HTML.ParsedTable You can get the tag parameters in [[#table...]] by getParameter (String). com.ngMAT.servlet.EZServletContext filtering function is available with properties: EZServlet.Filter.Parameter..Class EZServlet.Filter.HTMLTemplateStringValue..Class. The parameter filters will work with getParameter(String) and getPrameterValues(String). You can use getRawParameter(String) or getRawParameterValues(String) to get values before filtering. The String value filters for HTMLTemplate will work with setTagValue (String) of HTMLTemplate instances which was created by EZServletContext#getTemplate(String). getString (String filename) loads the specified file as an HTMLString object. com.ngMAT.servlet.EZServletConfig getShortProperty (String name, short default_value) getIntProperty (String name, int default_value) getLongProperty (String name, long default_value) getBooleanProperty (String name) getBooleanProperty (String name, boolean default_value) debug (Object o), _debug (Object o), debugPrintln (Object o). com.ngMAT.tools.Bcp the property "Bcp.ColumnDelimiter" over-rides the property "DSV.ColumnDelimiter". So you will not have to specify the property "DSV.ColumnDelimiter". new classes com.ngMAT.EZCgiServlet EZServlet version of com.ngMAT.CGI. com.ngMAT.servlet.EZServletFilter a filter used in EZServletContext. You can use this as a parameter filter or String value filter which is set in HTMLTemplte at this version. com.ngMAT.servlet.filter.EZSanitizer a filter to escape &<>"' with html encoding method. com.ngMAT.servlet.filter.Text2Html a filter to convert white spaces into  , and new-lines, i.e., CR+LF and LF, into
. ELIMINATED FUNCTIONS / CLASSES com.ngMAT.NullServlet - class eliminated. com.ngMAT.ShowHttpInfo - class eliminated. com.ngMAT.BaseCGIServlet - class eliminated. com.ngMAT.CGI - class eliminated. com.ngMAT.TemplateBasedServlet - class eliminated. com.ngMAT.HTML.HTMLTemplate setInsertionTagValue (String name, class value) - eliminated. com.ngMAT.HTML.HTMLString addHTMLString (String) - eliminated. Ver 2001.0.06 2002/10/25 FIXED BUGS bug id tbs00015 com.ngMAT.tools.Bcp#bcpin never rolls-back even when aborting. bug id tbs00016 HTTP header "Content-Length" will become wrong when you send an HTMLTemplate which has custom tags build with subclasses of com.ngMAT.HTML.EZSCustomTag. new functions / modified functions com.ngMAT.Common.ngmObject / ngmObjectFunction String constants and charactor constants are moved from ngmObject to ngmObjectFunction. com.ngMAT.Common.KeyValuePackage#toString() new. com.ngMAT.Common.CoolProperties#put (KeyValuePackage) new. com.ngMAT.HTML.InsertionTag will parse the tag parameters with com.ngMAT.Common.AttributeParser. The sub-classes ParsedTable and CustomTag use the same manner. com.ngMAT.HTML.form.Input new consntant S_DISABLED. new method setDisabled(). These can be used with its sub-classes Checkbox, Radio and etc. com.ngMAT.HTML.HTMLString new String constant S_HTML_SPACE ( = " "). new constructor HTMLString(String str, int count). com.ngMAT.servlet.EZServletContext wrapup() will be called after EZServlet#processApplication(). EZServletContext#wrapup() is empty method. getContextPath() will return the context path. getRequestPath() will return the value excluding the protocol and the server name portion from the value of getRequestURI(). getRelativeRequestPath() will return the value excluding the context path from the value of getRequestPath(). com.ngMAT.tools.Bcp com.ngMAT.tools.PGBcp will erase characters specified with the property "Bcp.CleanupChars". new classes com.ngMAT.Common.AttributeParser attribute string parser. Values may be surrounded with double quotations. "\" will work as an escape. com.ngMAT.HTML.HTMLSpace a utility class to use S_HTML_SPACE. com.ngMAT.tools.HttpPing test tool to check http connection with the specified URL. Ver 2001.0.05a 2002/09/18 FIXED BUGS none new functions / modified functions com.ngMAT.HTML.HTMLTemplate You can specify the tag-escape character using following property "Application.Tag.EscapeChar". The default is '\'. It must be a SINGLE character. Ver 2001.0.05 2002/09/16 FIXED BUGS none new functions / modified functions com.ngMAT.servlet.EZServlet Even when there happens an exception in EZServlet, EZServlet will report it into log. EZServlet will send the "Content-Length" header when it can get content length except for LineReaderComponent. com.ngMAT.servlet.EZServletConfig You can specify the exception handler for exceptions caught in EZServlet with following property: EZServlet.ExceptionHandelr= The specified class must implemet com.ngMAT.serlvet.ExceptionHandler. com.ngMAT.Common.DBConnection Health checking function will check the status of connections. If Connection#close() throws an exception in removeConnection (int), it will be ignored and only be reported in the debug log. Watch dog will be able to work even if there is no more available connection found in getConnection (String). com.ngMAT.Common.ngmObject getGroupedProperties(String) is available if the Properties is instance of CoolProperties. com.ngMAT.Common.PooledDBConnection Health checking function will check the status of connections. If Connection#close() throws an exception in removeConnection (int), it will be ignored and only be reported in the debug log. Watch dog will be able to work even if there is no more available connection found in getConnection (String). com.ngMAT.HTML.HTMLTemplate getCustomTag(String name) will return the custom tag object parsed in HTMLTemplate '\' right before the tag string will work as an escape. new classes com.ngMAT.servlet.ExceptionHandler exeption handler class to handle the exceptions caught in EZServlet. com.ngMAT.Common.DBConnectionHealthChecker the health checker to check the health status of the connection in DBConnection / PooledDBConnection. com.ngMAT.Common.StandardOracleHealthChecker the standard health checker for PostgreSQL. This uses "select 1 from dual" to check the health of db connection. com.ngMAT.Common.StandardPostgreSQLHealthChecker the standard health checker for PostgreSQL. This uses "select 1" to check the health of db connection. com.ngMAT.HTML.CustomTag the base class of custom tag handler class used in the HTMLTemplate. com.ngMAT.HTML.EZSCustomTag CustomTag to use with EZServlet. com.ngMAT.HTML.InputStreamResource HTMLComponent for InputStream. com.ngMAT.HTML.FileResource HTMLComponent for file resource. Ver 2001.0.04 2002/07/20 FIXED BUGS bug id tbs00011 com.ngMAT.Common.ngmPGDBObject#getDBString(String) escapes "\" from this version. bug id tbs00012 NullPointerException is thrown at com.ngMAT.servlet.EZServletContect#init(..) when HttpServletRequest#getCookies() returns null. bug id tbs00013 com.ngMAT.tools.Bcp, com.ngMAT.tools.PGBcp misses to close Statement/ResultSet. bug id tbs00014 com.ngMAT.servlet.EZServletContext#createCookieTimestamp(..) gives wrong string with the hour field of "24" when it should be "00". new functions / modified functions com.ngMAT.Mail.SimpleMailMessage Multi-byte characters are allowed as recipient email addresses. You can specify the characterset with the property "Mail.Charset". The default is iso-2022-jp. com.ngMAT.Common.Log "HOURLY" is available for switching timing. It specifies switching the file name on every hour 0 minute. The file name extention will be the format "yyyyMMdd.HH". com.ngMAT.Common.CoolProperties getGroupedProperties (String). com.ngMAT.HTML.ParsedTable will output nothing if no contents are available to be output. com.ngMAT.HTML.HTMLTemplate This will give a clear message for the exception on loading included templates. printStackTrace(String tagname, Throwable t). com.ngMAT.servlet.EZServletContext On analyzing cookie value at receiving, if the first character is not "%", cookie value will be converted as it is encoded with the same type of request parameters. This will avoid the problem which may happen after migration from the version before 2001.0.02 although it is not perfect. getCookies() will return the decoded cookie value. getRawCookies() will return the raw cookie value before decoding. getCookiesTable() will. forward() will forward the request to another servlet. setStatus(int status_code). getMethod(). com.ngMAT.servlet.EZServletConfig You can specify the html which EZServletContext#getErrorHTML (Thrownable) will use with one of the following properties: EZServlet.ErrorTemplate : file name of the template file EZServlet.ErrorHTML : template HTML string. You can omit to flush or close the stream after sending response with following properties: EZServlet.ForceStreamFlush=false EZServlet.ForceStreamClose=false defaults for bothe are true and the stream will be flushed and closed after sending response. You can omit url enconding on redirection with the property: EZServlet.ForceUrlEncodingOnRedirection=false default is true and sendRedirect will call HttpServletResponse#encodeRedirectUrl(..). getTemplate(String) will never throw IOException but may throw com.ngMAT.Common.LowLevelException. new classes Ver 2001.0.03 2001/09/14 FIXED BUGS none new functions / modified functions com.ngMAT.servlet.EZServletContext The property EZServlet.TargetServletSpec enables to switch the functions to handle session values setSessionValue(...)/getSessionValue(...)/getSessionValueNames(...)/removeSessionValue(...). EZServlet.TargetServletSpec=2.2 specifies to use HttpSession#xxxAttributexxx(...) and EZServlet.TargetServletSpec=2.0 specifies to use HttpSession#xxxValuexxx(...). Some web application servers like BEA WebLogicServer 6 will fail to handling session objects in the clustred servers environment with HttpSession#xxxValuexxx(...). "2.1" is not allowed for this property item. com.ngMAT.Common.CoolProperties will enable referring other property values. The property #VariableReference=enable indicates starting of this function, referring other values with {$keyname}. The single "{" right before "{$keyname}" works as escape character. But double "{", i.e., "{{", will be an escape of an escape. The property #VariableReference=disable stops this function. com.ngMAT.Common.CoolProperties# will display the dependency of the properties files on loading. public Enumeration getFilenameList() will give the enumeration of file names loaded from. com.ngMAT.Mail.SimpleMailMessage new methods getMessageID(), getTosArray(). new classes Ver 2001.0.02 2001/08/21 FIXED BUGS bug id tbs00009 NullPointerException is thrown in com.ngMAT.EZServlet the properties file doesn't have a Servlet.Request.Charset element. bug id tbs00010 When the pool is in an insufficient state , assignment of connection with the com.ngMAT.Common.DBConnection#getConnection(...) goes wrong. new functions / modified functions com.ngMAT.servlet.EZServletContext will encode cookie values with utf 8 on sending and decode then on receiving. new classes none Ver 2001.0.01 2001/08/15 FIXED BUGS bug id tbs00008 NullPointerException is thrown in constructor of com.ngMAT.Common.CoolProperties with Java 2 SDK 1.3. new functions none new classes none Ver 2001.0 2001/08/07 FIXED BUGS bug id tbs00004 com.ngMAT.servlet.EZServletContext#sendRedirect (String) misses sending cookies. bug id tbs00005 com.ngMAT.HTML.form.Checkbox.setChecked() doesn't work. bug id tbs00006 com.ngMAT.HTML.form.Radio.setChecked() doesn't work. bug id tbs00007 com.ngMAT.Common.DSV has a wrong size 1 when its constructor is called with empty string. new functions com.ngMAT.servlet.EZServlet On sending HTMLTemplate output, varilable tags will be replaced with properties. Extra header sending function with the property Servlet.Header=. com.ngMAT.servlet.EZServletConfig short getShortProperty (String name)ljB com.ngMAT.servlet.EZServletContext addCookie (String name, String value, int max_age). addCookie (String name, String value, String path). addCookie (String name, String value, String path, int max_age). long getLongCookieValue (String name). removeSessionValue (String name). short getShortParameter (String name). short getShortParameter (String name, short default_value). boolean getBooleanParameter (String name). boolean getBooleanParameter (String name, short default_value). int getIntParameter (String name, int default_value). long getLongParameter (String name, long default_value). boolean[] getBooleanParameterValues (String name). short[] getShortParameterValues (String name). int[] getIntParameterValues (String name). long[] getLongParameterValues (String name). String getRequestURI(). String getRequestURL(). void sendError (int status_code). void sendError (int status_code, String message). String getRemoteAddr(). HTMLTemplate getTemplate (String name) will handle "ifdef". setRadioCheckedWithParameter (HTMLTemplate, String). setCheckboxCheckedWithParameter (HTMLTemplate, String). com.ngMAT.Common.SmallCodeTable add (String key, String value). put (String key, String value). add (int index, String key, String value). com.ngMAT.Common.CoolProperties This will hold vector image in its instance. You can get the vector image with getVectorImage(). When the encoding name starts with "#", the property item "#EncodingType" will not included in the item list. Thanx for a comment. com.ngMAT.Common.Log setLineHeader (null) will stop the line header output. com.ngMAT.HTML.HTMLTemplate It will replace all of the tags which has a same name at one time with setTagValue(..)/setInsertionTagValue(..). setTemplateVariables (Properties) will replace the template variable tags [[$.../]] with properties values. This function helps raising the environmental adaptability of a template. EZServlet automatically calls this method while EZServletContext#getTemplate for you. setRadioChecked (String, String), setRadioChecked (String, long), setCheckboxChecked (String, String), setCheckboxChecked (String, long) are available. ifdef will be evaluated after trimming. com.ngMAT.HTML.form.Select It will use the vector image when the Propties parameter is an instance of CoolProperties in the constructor which has Properties parameter. Thanx for a comment. com.ngMAT.tools.Bcp New property Bcp.File.Encoding enables to specify the encoding type for file io. new classes com.ngMAT.HTML.ByteArrayComponent Use this class to return the contents other than HTML like images. com.ngMAT.HTML.LineReaderComponent A memory can be saved if you use this class to return the larger contents per line from DB or a file. com.ngMAT.HTML.GroupedHTMLComponent This group-izes checkboxes or radiobuttons. com.ngMAT.HTML.NullHTMLComponent empty:) com.ngMAT.HTML.ParsedTable This parses a <TABLE> tag in template and creates a template for rows. com.ngMAT.HTML.form.DecoratedCheckbox com.ngMAT.HTML.form.DecoratedRadio com.ngMAT.HTML.form.GroupedCheckbox com.ngMAT.HTML.form.GroupedRadio com.ngMAT.Common.PooledDBConnection Extended DBConnection which support to connect to more than one dbms instance. com.ngMAT.Common.ngmPGDBObject The version of ngmDBObject, which is for Oracle, for PostgreSQL. com.ngMAT.tools.PGBcp The version of Bcp, which is for Oracle, for PostgreSQL. Ver 1.1.02 2000/11/04 FIXED BUGS bug id tbs00003 com.ngMAT.Common.DBConnection#getConnection(...) fails to connet to the dbms if the property DBConnection.Retry.Count doesn't have a value of 1 or greater than 1. Ver 1.1.01 2000/11/02 FIXED BUGS bug id tbs00002 String getParameerValue(...) returns a wrongly transformed characters after com.ngMAT.servlet.TemplateBasedServlet, com.ngMAT.servlet.EZServletContext#getParameterValues(...). new functions com.ngMAT.servlet.EZServlet New property EZServlet.DEBUG_MODE=true to output the debug information is available. com.ngMAT.servlet.EZServletConfig getTemplate(String) is available to load HTMLTemplate while initializing. com.ngMAT.servlet.EZServletContext getParameterNames() is avaialble. setTagValueWithParameters(...) is available to replace all tags whose name are found in parameters with parameter values. It's helpful when you want to display the same value as the user input. com.ngMAT.HTML.HTMLTemplate setInsertionTagValue(..)/setTagValue(..)/getInsertionTag(..) will ignore the case in tag names. com.ngMAT.Common.DBConnection rollback will be forced in releaseConnection(..). New optional properties DBConnection.MaxConnextions, DBConnection.Retry.Interval, DBConnection.Retry.Count are available. The defaults are 32, 1000 msec and 0. com.ngMAT.tools.Bcp update mode is available. Ver 1.1.00 2000/10/12 new functions com.ngMAT.Common.DBConnection Following properties are available. On debug mode, you can get detail log. The default name of your watch dog is Patrasche. You can change its name though it's meaningless:) WatchDog.Name DBConnection.Log DBConnection.DebugMode com.ngMAT.Common.Log Changing output filename for every fixed time, DAYLY. The timestamp will be added after the specified filename. This DAYLY switching is the default and you can use this new function without chaging your program. If you don't want the filename changed, you have to specify "NONE" with the new constuctor. New Release EZServlet EZServlet has come ! EZServlet supplies most common process flow based on TemplateBasedServlet and its parts. It enables easy programming style with config classes which load and manage configurations and a context class to access communication objects between servers and browsers. Ver 1.0.01 2000/06/23 bug fix bug id tbs00001 On constructing HTMLTemplate without specifying tag marks in the properties file, NullPointerException is thrown. Ver 1.0 2000/06/06 First production release