If this statement is active, the ./ant command does not seem to compile
the file: HumanResEvents.java

afterwards i get the error:
org.ofbiz.webapp.event.EventHandlerException: Error invoking event, the
class org.ofbiz.humanres.HumanResEvents was not found

commenting out this statement resolves the problem.

Regards,
Hans



On Wed, 2011-08-24 at 17:38 +1200, Scott Gray wrote:
> Hi Hans,
> 
> Why do you keep commenting out the ant target in build.xml?  Removing it 
> prevents compilation on git based checkouts, I already put it back in after 
> you changed it last week.
> 
> Regards
> Scott
> 
> On 24/08/2011, at 3:25 PM, hans...@apache.org wrote:
> 
> > Author: hansbak
> > Date: Wed Aug 24 03:25:12 2011
> > New Revision: 1160969
> > 
> > URL: http://svn.apache.org/viewvc?rev=1160969&view=rev
> > Log:
> > missing and updated files of previous revision:1159056 
> > http://svn.apache.org/viewvc?rev=1159056&view=rev replace the HR company 
> > tree with a jquery version
> > 
> > Added:
> >    
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> >    (with props)
> >    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/
> >    
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/
> >    
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> >    (with props)
> >    ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/
> >    
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> >    (with props)
> > Modified:
> >    ofbiz/trunk/applications/humanres/build.xml
> >    ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml
> > 
> > Modified: ofbiz/trunk/applications/humanres/build.xml
> > URL: 
> > http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/build.xml?rev=1160969&r1=1160968&r2=1160969&view=diff
> > ==============================================================================
> > --- ofbiz/trunk/applications/humanres/build.xml (original)
> > +++ ofbiz/trunk/applications/humanres/build.xml Wed Aug 24 03:25:12 2011
> > @@ -51,7 +51,7 @@ under the License.
> >     <!-- Compilation of the source files                                    
> >                                                                             
> >          -->
> >     <!-- ================================================================== 
> > -->
> > 
> > -    <target name="classes" depends="prepare"/>
> > +    <!--<target name="classes" depends="prepare"/>-->
> > 
> >     <!-- ================================================================== 
> > -->
> >     <!-- Build JavaDoc                                                      
> > -->
> > 
> > Added: 
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> > URL: 
> > http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java?rev=1160969&view=auto
> > ==============================================================================
> > --- 
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> >  (added)
> > +++ 
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> >  Wed Aug 24 03:25:12 2011
> > @@ -0,0 +1,160 @@
> > +/*******************************************************************************
> > + * Licensed to the Apache Software Foundation (ASF) under one
> > + * or more contributor license agreements.  See the NOTICE file
> > + * distributed with this work for additional information
> > + * regarding copyright ownership.  The ASF licenses this file
> > + * to you under the Apache License, Version 2.0 (the
> > + * "License"); you may not use this file except in compliance
> > + * with the License.  You may obtain a copy of the License at
> > + *
> > + * http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in writing,
> > + * software distributed under the License is distributed on an
> > + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> > + * KIND, either express or implied.  See the License for the
> > + * specific language governing permissions and limitations
> > + * under the License.
> > + 
> > *******************************************************************************/
> > +package org.ofbiz.humanres;
> > +
> > +import java.io.IOException;
> > +import java.io.UnsupportedEncodingException;
> > +import java.io.Writer;
> > +import java.util.List;
> > +import java.util.Map;
> > +
> > +import javax.servlet.http.HttpServletRequest;
> > +import javax.servlet.http.HttpServletResponse;
> > +
> > +import javolution.util.FastList;
> > +import javolution.util.FastMap;
> > +import net.sf.json.JSONObject;
> > +
> > +import org.ofbiz.base.util.Debug;
> > +import org.ofbiz.base.util.UtilMisc;
> > +import org.ofbiz.base.util.UtilValidate;
> > +import org.ofbiz.entity.Delegator;
> > +import org.ofbiz.entity.GenericValue;
> > +import org.ofbiz.entity.util.EntityUtil;
> > +
> > +public class HumanResEvents {
> > +    public static final String module = HumanResEvents.class.getName();
> > +    public static final String resourceError = "ProductErrorUiLabels";
> > +    
> > +    // Please note : the structure of map in this function is according to 
> > the JSON data map of the jsTree
> > +    @SuppressWarnings("unchecked")
> > +    public static void getChildHRCategoryTree(HttpServletRequest request, 
> > HttpServletResponse response){
> > +        Delegator delegator = (Delegator) 
> > request.getAttribute("delegator");
> > +        String partyId = request.getParameter("partyId");
> > +        String onclickFunction = request.getParameter("onclickFunction");
> > +        String additionParam = request.getParameter("additionParam");
> > +        String hrefString = request.getParameter("hrefString");
> > +        String hrefString2 = request.getParameter("hrefString2");
> > +        
> > +        List categoryList = FastList.newInstance();
> > +        List<GenericValue> childOfComs;
> > +        
> > +        try {
> > +            GenericValue partyGroup = 
> > delegator.findByPrimaryKey("PartyGroup" ,UtilMisc.toMap("partyId", 
> > partyId));
> > +            if (UtilValidate.isNotEmpty(partyGroup)) {
> > +                childOfComs = 
> > EntityUtil.filterByDate(delegator.findByAnd("PartyRelationship", 
> > UtilMisc.toMap(
> > +                        "partyIdFrom", partyGroup.get("partyId"), 
> > "partyRelationshipTypeId", "GROUP_ROLLUP")));
> > +                if (UtilValidate.isNotEmpty(childOfComs)) {
> > +                    
> > +                    for (GenericValue childOfCom : childOfComs ) {
> > +                        Object catId = null;
> > +                        String catNameField = null;
> > +                        String title = null;
> > +                        
> > +                        Map josonMap = FastMap.newInstance();
> > +                        Map dataMap = FastMap.newInstance();
> > +                        Map dataAttrMap = FastMap.newInstance();
> > +                        Map attrMap = FastMap.newInstance();
> > +                        
> > +                        catId = childOfCom.get("partyIdTo");
> > +                        
> > +                        //Department or Sub department
> > +                        GenericValue childContext = 
> > delegator.findByPrimaryKey("PartyGroup" ,UtilMisc.toMap("partyId", catId));
> > +                        if (UtilValidate.isNotEmpty(childContext)) {
> > +                            catNameField = (String) 
> > childContext.get("groupName");
> > +                            title = catNameField;
> > +                            josonMap.put("title",title);
> > +                            
> > +                        }
> > +                        //Check child existing
> > +                        List<GenericValue> childOfSubComs = 
> > EntityUtil.filterByDate(delegator.findByAnd("PartyRelationship", 
> > UtilMisc.toMap(
> > +                                "partyIdFrom", catId, 
> > "partyRelationshipTypeId", "GROUP_ROLLUP")));
> > +                        if (UtilValidate.isNotEmpty(childOfSubComs)) {
> > +                            josonMap.put("state", "closed");
> > +                        }
> > +                        
> > +                        //Employee
> > +                        GenericValue emContext = 
> > delegator.findByPrimaryKey("Person" ,UtilMisc.toMap("partyId", catId));
> > +                        if (UtilValidate.isNotEmpty(emContext)) {
> > +                            String firstname = (String) 
> > emContext.get("firstName");
> > +                            String lastname = (String) 
> > emContext.get("lastName");
> > +                            if (UtilValidate.isEmpty(lastname)) {
> > +                                lastname = "";
> > +                            }
> > +                            if (UtilValidate.isEmpty(firstname)) {
> > +                                firstname = "";
> > +                            }
> > +                            title = firstname +" "+ lastname;
> > +                        }
> > +                        
> > +                        dataAttrMap.put("onClick", onclickFunction + "('" 
> > + catId + additionParam + "')");
> > +                        
> > +                        String hrefStr = hrefString + catId;
> > +                        if (UtilValidate.isNotEmpty(hrefString2)) {
> > +                            hrefStr = hrefStr + hrefString2;
> > +                        }
> > +                        dataAttrMap.put("href", hrefStr);
> > +                        
> > +                        dataMap.put("attr", dataAttrMap);
> > +                        
> > +                        attrMap.put("id", catId);
> > +                        josonMap.put("attr",attrMap);
> > +                        dataMap.put("title", title);
> > +                        josonMap.put("data", dataMap);
> > +                        
> > +                        categoryList.add(josonMap);
> > +                }
> > +                    toJsonObjectList(categoryList,response);
> > +                }
> > +            }
> > +        } catch (Exception e) {
> > +            e.printStackTrace();
> > +        }
> > +    }
> > +    
> > +    @SuppressWarnings("unchecked")
> > +    public static void toJsonObjectList(List attrList, HttpServletResponse 
> > response){
> > +        String jsonStr = "[";
> > +        for (Object attrMap : attrList) {
> > +            JSONObject json = JSONObject.fromObject(attrMap);
> > +            jsonStr = jsonStr + json.toString() + ',';
> > +        }
> > +        jsonStr = jsonStr + "{ } ]";
> > +        if (UtilValidate.isEmpty(jsonStr)) {
> > +            Debug.logError("JSON Object was empty; fatal error!",module);
> > +        }
> > +        // set the X-JSON content type
> > +        response.setContentType("application/json");
> > +        // jsonStr.length is not reliable for unicode characters
> > +        try {
> > +            response.setContentLength(jsonStr.getBytes("UTF8").length);
> > +        } catch (UnsupportedEncodingException e) {
> > +            Debug.logError("Problems with Json encoding",module);
> > +        }
> > +        // return the JSON String
> > +        Writer out;
> > +        try {
> > +            out = response.getWriter();
> > +            out.write(jsonStr);
> > +            out.flush();
> > +        } catch (IOException e) {
> > +            Debug.logError("Unable to get response writer",module);
> > +        }
> > +    }
> > +}
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> > ------------------------------------------------------------------------------
> >    svn:eol-style = native
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> > ------------------------------------------------------------------------------
> >    svn:keywords = "Date Rev Author URL Id"
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/src/org/ofbiz/humanres/HumanResEvents.java
> > ------------------------------------------------------------------------------
> >    svn:mime-type = text/plain
> > 
> > Added: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> > URL: 
> > http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy?rev=1160969&view=auto
> > ==============================================================================
> > --- 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> >  (added)
> > +++ 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> >  Wed Aug 24 03:25:12 2011
> > @@ -0,0 +1,87 @@
> > +/*
> > + * Licensed to the Apache Software Foundation (ASF) under one
> > + * or more contributor license agreements.  See the NOTICE file
> > + * distributed with this work for additional information
> > + * regarding copyright ownership.  The ASF licenses this file
> > + * to you under the Apache License, Version 2.0 (the
> > + * "License"); you may not use this file except in compliance
> > + * with the License.  You may obtain a copy of the License at
> > + *
> > + * http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in writing,
> > + * software distributed under the License is distributed on an
> > + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> > + * KIND, either express or implied.  See the License for the
> > + * specific language governing permissions and limitations
> > + * under the License.
> > + */
> > +
> > +/*
> > + * This script is also referenced by the ecommerce's screens and
> > + * should not contain order component's specific code.
> > + */
> > +import org.ofbiz.entity.util.EntityUtil;
> > +import org.ofbiz.base.util.*;
> > +import org.ofbiz.product.catalog.*;
> > +import org.ofbiz.product.category.*;
> > +import javolution.util.FastMap;
> > +import javolution.util.FastList;
> > +import javolution.util.FastList.*;
> > +import org.ofbiz.entity.*;
> > +import java.util.List;
> > +
> > +// Put the result of CategoryWorker.getRelatedCategories into the 
> > separateRootType function as attribute.
> > +// The separateRootType function will return the list of category of given 
> > catalog.
> > +// PLEASE NOTE : The structure of the list of separateRootType function is 
> > according to the JSON_DATA plugin of the jsTree.
> > +
> > +completedTree =  FastList.newInstance();
> > +completedTreeContext =  FastList.newInstance();
> > +existParties =  FastList.newInstance();
> > +
> > +//internalOrg list
> > +partyRelationships = 
> > EntityUtil.filterByDate(delegator.findByAnd("PartyRelationship", 
> > [partyIdFrom : partyId, partyRelationshipTypeId : "GROUP_ROLLUP"]));
> > +if (partyRelationships) {
> > +    //root
> > +    partyRoot = delegator.findByPrimaryKey("PartyGroup", [partyId : 
> > partyId]);
> > +    partyRootMap = FastMap.newInstance();
> > +    partyRootMap.put("partyId", partyId);
> > +    partyRootMap.put("groupName", partyRoot.getString("groupName"));
> > +
> > +    //child
> > +    for(partyRelationship in partyRelationships) {
> > +        partyGroup = delegator.findByPrimaryKey("PartyGroup", [partyId : 
> > partyRelationship.getString("partyIdTo")]);
> > +        partyGroupMap = FastMap.newInstance();
> > +        partyGroupMap.put("partyId", partyGroup.getString("partyId"));
> > +        partyGroupMap.put("groupName", partyGroup.getString("groupName"));
> > +        completedTreeContext.add(partyGroupMap);
> > +    }
> > +
> > +    partyRootMap.put("child", completedTreeContext);
> > +    completedTree.add(partyRootMap);
> > +    
> > +}
> > +// The complete tree list for the category tree
> > +context.completedTree = completedTree;
> > +//Filter Existing parties
> > +existPartiesContexts = 
> > EntityUtil.filterByDate(delegator.findByAnd("PartyRelationship", 
> > [partyIdFrom : partyId]));
> > +if (existPartiesContexts) {
> > +   for(existPartiesContext in existPartiesContexts) {
> > +        partyGroup = delegator.findByPrimaryKey("PartyGroup", [partyId : 
> > existPartiesContext.getString("partyIdTo")]);
> > +        if (partyGroup) {
> > +           partyGroupMap = FastMap.newInstance();
> > +            partyGroupMap.put("partyId", partyGroup.getString("partyId"));
> > +            partyGroupMap.put("name", partyGroup.getString("groupName"));
> > +            existParties.add(partyGroupMap);
> > +        }
> > +        person = delegator.findByPrimaryKey("Person", [partyId : 
> > existPartiesContext.getString("partyIdTo")]);
> > +        if (person) {
> > +           personMap = FastMap.newInstance();
> > +           personMap.put("partyId", person.getString("partyId"));
> > +           personMap.put("name", person.getString("firstName"));
> > +           existParties.add(personMap);
> > +        }
> > +    }
> > +}
> > +context.existParties = existParties;
> > +println'=============================================== existParties : 
> > '+existParties;
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> > ------------------------------------------------------------------------------
> >    svn:eol-style = native
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> > ------------------------------------------------------------------------------
> >    svn:keywords = "Date Rev Author URL Id"
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/actions/category/CategoryTree.groovy
> > ------------------------------------------------------------------------------
> >    svn:mime-type = text/plain
> > 
> > Modified: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml
> > URL: 
> > http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml?rev=1160969&r1=1160968&r2=1160969&view=diff
> > ==============================================================================
> > --- 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml 
> > (original)
> > +++ 
> > ofbiz/trunk/applications/humanres/webapp/humanres/WEB-INF/controller.xml 
> > Wed Aug 24 03:25:12 2011
> > @@ -1056,7 +1056,7 @@ under the License.
> >     </request-map>
> >     <request-map uri="getHRChild">
> >         <security auth="false" https="true"/>
> > -        <event type="java" path="org.ofbiz.humanres.HumanResServices" 
> > invoke="getChildHRCategoryTree"/>
> > +        <event type="java" path="org.ofbiz.humanres.HumanResEvents" 
> > invoke="getChildHRCategoryTree"/>
> >         <response name="success" type="none"/>
> >     </request-map>
> >     <!-- ===================Lookup Request===================== -->
> > 
> > Added: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> > URL: 
> > http://svn.apache.org/viewvc/ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl?rev=1160969&view=auto
> > ==============================================================================
> > --- 
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> >  (added)
> > +++ 
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> >  Wed Aug 24 03:25:12 2011
> > @@ -0,0 +1,111 @@
> > +<#--
> > +Licensed to the Apache Software Foundation (ASF) under one
> > +or more contributor license agreements.  See the NOTICE file
> > +distributed with this work for additional information
> > +regarding copyright ownership.  The ASF licenses this file
> > +to you under the Apache License, Version 2.0 (the
> > +"License"); you may not use this file except in compliance
> > +with the License.  You may obtain a copy of the License at
> > +
> > +http://www.apache.org/licenses/LICENSE-2.0
> > +
> > +Unless required by applicable law or agreed to in writing,
> > +software distributed under the License is distributed on an
> > +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> > +KIND, either express or implied.  See the License for the
> > +specific language governing permissions and limitations
> > +under the License.
> > +-->
> > +
> > +<script type="text/javascript">
> > +<#-- some labels are not unescaped in the JSON object so we have to do 
> > this manualy -->
> > +function unescapeHtmlText(text) {
> > +    return jQuery('<div />').html(text).text()
> > +}
> > + 
> > +jQuery(window).load(createTree());
> > +
> > +<#-- creating the JSON Data -->
> > +var rawdata = [
> > +        <#if (completedTree?has_content)>
> > +            <@fillTree rootCat = completedTree/>
> > +        </#if>
> > +        
> > +        <#macro fillTree rootCat>
> > +            <#if (rootCat?has_content)>
> > +                <#list rootCat as root>
> > +                    {
> > +                    "data": {"title" : unescapeHtmlText("<#if 
> > root.groupName?exists>${root.groupName?js_string} 
> > [${root.partyId}]<#else>${root.partyId?js_string}</#if>"), "attr": {"href" 
> > : "<@ofbizUrl>/viewprofile?partyId=${root.partyId}</@ofbizUrl>","onClick" : 
> > "callDocument('${root.partyId}');"}},
> > +                    "attr": {"id" : "${root.partyId}", "rel" : "root"}
> > +                    <#if root.child?exists>
> > +                    ,"state" : "closed"
> > +                    </#if>
> > +                    <#if root_has_next>
> > +                        },
> > +                    <#else>
> > +                        }
> > +                    </#if>
> > +                </#list>
> > +            </#if>
> > +        </#macro>
> > +     ];
> > +
> > + <#-- create Tree-->
> > +  function createTree() {
> > +    jQuery(function () {
> > +        $.cookie('jstree_select', null);
> > +        $.cookie('jstree_open', null);
> > +        
> > +        jQuery("#tree").jstree({
> > +        "core" : { "initially_open" : [ "${partyId}" ] },
> > +        "plugins" : [ "themes", "json_data","ui" ,"cookies", "types", 
> > "crrm"],
> > +            "json_data" : {
> > +                "data" : rawdata,
> > +                          "ajax" : { "url" : 
> > "<@ofbizUrl>getHRChild</@ofbizUrl>", "type" : "POST",
> > +                          "data" : function (n) {
> > +                            return { 
> > +                                "partyId" : n.attr ? 
> > n.attr("id").replace("node_","") : 1 ,
> > +                                "additionParam" : "','category" ,
> > +                                "hrefString" : "viewprofile?partyId=" ,
> > +                                "onclickFunction" : "callDocument"
> > +                        }; 
> > +                    }
> > +                }
> > +            },
> > +            "types" : {
> > +             "valid_children" : [ "root" ],
> > +             "types" : {
> > +                 "CATEGORY" : {
> > +                     "icon" : { 
> > +                         "image" : 
> > "/images/jquery/plugins/jsTree/themes/apple/d.png",
> > +                         "position" : "10px40px"
> > +                     }
> > +                 }
> > +             }
> > +            }
> > +        });
> > +    });
> > +  }
> > +  
> > +  function callDocument(id,type) {
> > +    //jQuerry Ajax Request
> > +    var dataSet = {};
> > +        URL = 'viewprofile';
> > +        dataSet = {"partyId" : id, "ajaxUpdateEvent" : "Y"};
> > +        
> > +    jQuery.ajax({
> > +        url: URL,
> > +        type: 'POST',
> > +        data: dataSet,
> > +        error: function(msg) {
> > +            alert("An error occured loading content! : " + msg);
> > +        },
> > +        success: function(msg) {
> > +            jQuery('div.contentarea').html(msg);
> > +        }
> > +    });
> > +  }
> > +  
> > +</script>
> > +
> > +<div id="tree"></div>
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> > ------------------------------------------------------------------------------
> >    svn:eol-style = native
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> > ------------------------------------------------------------------------------
> >    svn:keywords = "Date Rev Author URL Id"
> > 
> > Propchange: 
> > ofbiz/trunk/applications/humanres/webapp/humanres/humanres/category/CategoryTree.ftl
> > ------------------------------------------------------------------------------
> >    svn:mime-type = text/plain
> > 
> > 
> 

-- 
Ofbiz on twitter: http://twitter.com/apache_ofbiz
Myself on twitter: http://twitter.com/hansbak
Antwebsystems.com: Quality services for competitive rates.

Reply via email to