details: https://code.openbravo.com/erp/devel/pi/rev/8ec4eac1fac0 changeset: 15370:8ec4eac1fac0 user: Guillermo Álvarez de Eulate <guillermo.alvarez <at> openbravo.com> date: Tue Feb 07 16:18:38 2012 +0100 summary: Fixed issue 10429: Warning is shown if wrong java package is entered.
details: https://code.openbravo.com/erp/devel/pi/rev/b25e86b22d00 changeset: 15371:b25e86b22d00 user: Guillermo Álvarez de Eulate <guillermo.alvarez <at> openbravo.com> date: Tue Feb 07 15:57:02 2012 +0100 summary: Fixed issue 17955: Now sequence numbers are genetared correctly using 'create fields' diffstat: src-db/database/model/functions/AD_TAB_IMPORT.xml | 11 +- src-db/database/sourcedata/AD_CALLOUT.xml | 10 + src-db/database/sourcedata/AD_COLUMN.xml | 2 + src-db/database/sourcedata/AD_MESSAGE.xml | 11 + src-db/database/sourcedata/AD_MODEL_OBJECT.xml | 12 + src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml | 10 + src/org/openbravo/erpCommon/ad_callouts/JavaPackageChecker.java | 66 ++++++++++ 7 files changed, 120 insertions(+), 2 deletions(-) diffs (200 lines): diff -r 4182555aaecc -r b25e86b22d00 src-db/database/model/functions/AD_TAB_IMPORT.xml --- a/src-db/database/model/functions/AD_TAB_IMPORT.xml Tue Feb 07 16:22:27 2012 +0100 +++ b/src-db/database/model/functions/AD_TAB_IMPORT.xml Tue Feb 07 15:57:02 2012 +0100 @@ -98,6 +98,11 @@ where ad_tab_id = v_Record_ID and m.ad_module_id = t.ad_module_id and ISINDEVELOPMENT ='Y'; + + select max(seqno) + into v_SeqNoCounter + from ad_field + where ad_field.ad_tab_id = v_Record_ID; if v_module_id is null then select max(ad_module_id) @@ -128,8 +133,10 @@ else v_GridSeqNo := 0; end if; - - v_SeqNoCounter := 20; --Reserve 10 for Organization + + if v_SeqNoCounter < 20 then + v_SeqNoCounter := 20; --Reserve 10 for Organization + end if; FOR Cur_Column IN(-- added by Pablo Sarobe SELECT c.Columnname, c.Name, c.Description, c.Help, c.AD_Column_ID, c.FieldLength, t.tablename, c.AD_Module_ID diff -r 4182555aaecc -r b25e86b22d00 src-db/database/sourcedata/AD_CALLOUT.xml --- a/src-db/database/sourcedata/AD_CALLOUT.xml Tue Feb 07 16:22:27 2012 +0100 +++ b/src-db/database/sourcedata/AD_CALLOUT.xml Tue Feb 07 15:57:02 2012 +0100 @@ -980,6 +980,16 @@ <!--F6E343E77DA249559AEF8651D595E880--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--F6E343E77DA249559AEF8651D595E880--></AD_CALLOUT> +<!--FABEBED69FEF49F8993F3FDA911FD94B--><AD_CALLOUT> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <AD_CALLOUT_ID><![CDATA[FABEBED69FEF49F8993F3FDA911FD94B]]></AD_CALLOUT_ID> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <NAME><![CDATA[Java package checker]]></NAME> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <DESCRIPTION><![CDATA[verifies if the java package is valid]]></DESCRIPTION> +<!--FABEBED69FEF49F8993F3FDA911FD94B--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> +<!--FABEBED69FEF49F8993F3FDA911FD94B--></AD_CALLOUT> + <!--FF8080813141FBE30131420735D80013--><AD_CALLOUT> <!--FF8080813141FBE30131420735D80013--> <AD_CALLOUT_ID><![CDATA[FF8080813141FBE30131420735D80013]]></AD_CALLOUT_ID> <!--FF8080813141FBE30131420735D80013--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 4182555aaecc -r b25e86b22d00 src-db/database/sourcedata/AD_COLUMN.xml --- a/src-db/database/sourcedata/AD_COLUMN.xml Tue Feb 07 16:22:27 2012 +0100 +++ b/src-db/database/sourcedata/AD_COLUMN.xml Tue Feb 07 15:57:02 2012 +0100 @@ -224376,6 +224376,7 @@ <!--56EB0A0CAC47B232E040007F01001BD8--> <ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR> <!--56EB0A0CAC47B232E040007F01001BD8--> <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY> <!--56EB0A0CAC47B232E040007F01001BD8--> <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE> +<!--56EB0A0CAC47B232E040007F01001BD8--> <AD_CALLOUT_ID><![CDATA[FABEBED69FEF49F8993F3FDA911FD94B]]></AD_CALLOUT_ID> <!--56EB0A0CAC47B232E040007F01001BD8--> <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS> <!--56EB0A0CAC47B232E040007F01001BD8--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--56EB0A0CAC47B232E040007F01001BD8--> <POSITION><![CDATA[19]]></POSITION> @@ -248759,6 +248760,7 @@ <!--7E3EF62A996311DD88AB001D09C4A2FE--> <ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR> <!--7E3EF62A996311DD88AB001D09C4A2FE--> <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY> <!--7E3EF62A996311DD88AB001D09C4A2FE--> <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE> +<!--7E3EF62A996311DD88AB001D09C4A2FE--> <AD_CALLOUT_ID><![CDATA[FABEBED69FEF49F8993F3FDA911FD94B]]></AD_CALLOUT_ID> <!--7E3EF62A996311DD88AB001D09C4A2FE--> <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS> <!--7E3EF62A996311DD88AB001D09C4A2FE--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--7E3EF62A996311DD88AB001D09C4A2FE--> <POSITION><![CDATA[6]]></POSITION> diff -r 4182555aaecc -r b25e86b22d00 src-db/database/sourcedata/AD_MESSAGE.xml --- a/src-db/database/sourcedata/AD_MESSAGE.xml Tue Feb 07 16:22:27 2012 +0100 +++ b/src-db/database/sourcedata/AD_MESSAGE.xml Tue Feb 07 15:57:02 2012 +0100 @@ -16993,6 +16993,17 @@ <!--7274F488C47D4E9EB793C4A506F2825C--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--7274F488C47D4E9EB793C4A506F2825C--></AD_MESSAGE> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--><AD_MESSAGE> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <AD_MESSAGE_ID><![CDATA[72AA3E0BE79647BABDC4FEA0E1AAB282]]></AD_MESSAGE_ID> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <VALUE><![CDATA[javaPackageError]]></VALUE> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <MSGTEXT><![CDATA[The java package could cause problems. Try to fill the field with correct one. (E.g. "org.openbravo.example")]]></MSGTEXT> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <MSGTYPE><![CDATA[W]]></MSGTYPE> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> +<!--72AA3E0BE79647BABDC4FEA0E1AAB282--></AD_MESSAGE> + <!--72F16255E38E43B2BBAFEA26E502C9C8--><AD_MESSAGE> <!--72F16255E38E43B2BBAFEA26E502C9C8--> <AD_MESSAGE_ID><![CDATA[72F16255E38E43B2BBAFEA26E502C9C8]]></AD_MESSAGE_ID> <!--72F16255E38E43B2BBAFEA26E502C9C8--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 4182555aaecc -r b25e86b22d00 src-db/database/sourcedata/AD_MODEL_OBJECT.xml --- a/src-db/database/sourcedata/AD_MODEL_OBJECT.xml Tue Feb 07 16:22:27 2012 +0100 +++ b/src-db/database/sourcedata/AD_MODEL_OBJECT.xml Tue Feb 07 15:57:02 2012 +0100 @@ -4028,6 +4028,18 @@ <!--C89A0AEF274C411B8EF38436FA4193B5--> <OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE> <!--C89A0AEF274C411B8EF38436FA4193B5--></AD_MODEL_OBJECT> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--><AD_MODEL_OBJECT> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <AD_MODEL_OBJECT_ID><![CDATA[CA84D1D58D6D4C5495F9FDE7549336E4]]></AD_MODEL_OBJECT_ID> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <ACTION><![CDATA[C]]></ACTION> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <CLASSNAME><![CDATA[org.openbravo.erpCommon.ad_callouts.JavaPackageChecker]]></CLASSNAME> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <ISDEFAULT><![CDATA[Y]]></ISDEFAULT> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <AD_CALLOUT_ID><![CDATA[FABEBED69FEF49F8993F3FDA911FD94B]]></AD_CALLOUT_ID> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--> <OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE> +<!--CA84D1D58D6D4C5495F9FDE7549336E4--></AD_MODEL_OBJECT> + <!--CD9445A64E6B435AA70BFF526289C69B--><AD_MODEL_OBJECT> <!--CD9445A64E6B435AA70BFF526289C69B--> <AD_MODEL_OBJECT_ID><![CDATA[CD9445A64E6B435AA70BFF526289C69B]]></AD_MODEL_OBJECT_ID> <!--CD9445A64E6B435AA70BFF526289C69B--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 4182555aaecc -r b25e86b22d00 src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml --- a/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml Tue Feb 07 16:22:27 2012 +0100 +++ b/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml Tue Feb 07 15:57:02 2012 +0100 @@ -4430,6 +4430,16 @@ <!--F5BCD7FB0FA74F3DB30B4376FC021BA7--> <ISDEFAULT><![CDATA[N]]></ISDEFAULT> <!--F5BCD7FB0FA74F3DB30B4376FC021BA7--></AD_MODEL_OBJECT_MAPPING> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--><AD_MODEL_OBJECT_MAPPING> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <AD_MODEL_OBJECT_MAPPING_ID><![CDATA[F7EB25F8D1E14A548D51BF6DE8E203D2]]></AD_MODEL_OBJECT_MAPPING_ID> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <AD_MODEL_OBJECT_ID><![CDATA[CA84D1D58D6D4C5495F9FDE7549336E4]]></AD_MODEL_OBJECT_ID> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <MAPPINGNAME><![CDATA[/ad_callouts/Javapackagechecker.html]]></MAPPINGNAME> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--> <ISDEFAULT><![CDATA[Y]]></ISDEFAULT> +<!--F7EB25F8D1E14A548D51BF6DE8E203D2--></AD_MODEL_OBJECT_MAPPING> + <!--F933D34873A94ECCB0A9F3EF490E5660--><AD_MODEL_OBJECT_MAPPING> <!--F933D34873A94ECCB0A9F3EF490E5660--> <AD_MODEL_OBJECT_MAPPING_ID><![CDATA[F933D34873A94ECCB0A9F3EF490E5660]]></AD_MODEL_OBJECT_MAPPING_ID> <!--F933D34873A94ECCB0A9F3EF490E5660--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 4182555aaecc -r b25e86b22d00 src/org/openbravo/erpCommon/ad_callouts/JavaPackageChecker.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/openbravo/erpCommon/ad_callouts/JavaPackageChecker.java Tue Feb 07 15:57:02 2012 +0100 @@ -0,0 +1,66 @@ +/* + ************************************************************************* + * The contents of this file are subject to the Openbravo Public License + * Version 1.1 (the "License"), being the Mozilla Public License + * Version 1.1 with a permitted attribution clause; you may not use this + * file except in compliance with the License. You may obtain a copy of + * the License at http://www.openbravo.com/legal/license.html + * Software distributed under the License is distributed on an "AS IS" + * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the + * License for the specific language governing rights and limitations + * under the License. + * The Original Code is Openbravo ERP. + * The Initial Developer of the Original Code is Openbravo SLU + * All portions are Copyright (C) 2012 Openbravo SLU + * All Rights Reserved. + * Contributor(s): ______________________________________. + ************************************************************************ + */ +package org.openbravo.erpCommon.ad_callouts; + +import javax.lang.model.SourceVersion; +import javax.servlet.ServletException; + +import org.openbravo.dal.core.OBContext; +import org.openbravo.erpCommon.utility.Utility; + +/** + * This class implements the logic to validate the java package of a module. + * + * @author guilleaer + * + */ +public class JavaPackageChecker extends SimpleCallout { + + private static final long serialVersionUID = 1L; + + @Override + protected void execute(CalloutInfo info) throws ServletException { + String strPackage = info.getStringParameter("inpjavapackage", null); + if (!isValidName(strPackage)) { + info.addResult( + "WARNING", + Utility.messageBD(this, "javaPackageError", OBContext.getOBContext().getLanguage() + .getLanguage())); + } + } + + /** + * Returns a boolean which indicates if the java package name is valid. The method tries to verify + * that the java package name is valid, also looks for java reserved words which are not accepted + * for the java package name. + * + * @param javaPackageString + * String with the java package inserted by the user. + * @return true if the java package is correct. + */ + private boolean isValidName(String javaPackageString) { + for (String s : javaPackageString.split("\\.", -1)) { + if (!SourceVersion.isName(s)) { + return false; + } + } + return true; + } + +} ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits