You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@roller.apache.org by Glen Mazza <gl...@gmail.com> on 2014/01/27 04:47:55 UTC

Re: ROL-1981 Category ordering

I'm looking at it now myself...ROL-1981 is a very messy task, sorry, I 
suggested this item to you because the other ROL JIRA items you were 
looking at the time appeared less important.

Glen

On 01/19/2014 11:01 AM, Gaurav wrote:
> Hello Glen,
>
> I understood the way you suggested, as I just found that the feed 
> category list was also not populating. The way you suggested is 
> correct now as we did not have sub-categories now. Previoulsly we were 
> using that method as we every time associate category with 
> rootCategory, as we add each category below root (during add and edit 
> category we pass id in bean for initializing the weblogCategory).
> Also, I have corrected List to List<name> everywhere. I have now also 
> installed tomcat in my eclipse and it helped a lot, thanks for this 
> also. Just the test cases, I have to sought out what to do with them, 
> might be changing this way might solve this issue also.
> Last week was very busy for me have to work on weekends also, I will 
> now complete this task in this week.
>
> Thanks for all the help and giving me this much time for working 
> around this task.
>
> Gaurav
>
>
> On Monday 13 January 2014 06:22 PM, Glen Mazza wrote:
>> Hi Gaurav, just looked at the code.  I don't understand why there is 
>> a getWeblogCategories() in WeblogEntryManager --- categories are 
>> associated with a *Weblog* (the blog as a whole), not a *WeblogEntry* 
>> (a blog entry).  A WeblogEntry should have a getWeblogCategory() 
>> (singular) to identify the category the blog entry was placed in, but 
>> I would think getWeblogEntries() should be in the WeblogManager, and 
>> if temporarily necessary for the WeblogEntryManager to have a 
>> getWeblogCategories(), have it call a 
>> getWeblogManager().getWeblogCategories() to get that information.
>>
>> I don't know if the present implementation was an attempt to work 
>> around any shortcomings in JPA.  Offhand, though, that last method 
>> you listed, Weblog.getWeblogCategories() should be the most important 
>> method to get working, (ideally), I would think the only method that 
>> needs to have a getWeblogCategories() is Weblog/WeblogManager.
>>
>> Note, best to use parameterized types in new code (i.e., List<Blah> 
>> blah = new ArrayList<Blah>(); instead of just List blah) (see Bloch's 
>> book, Effective Java) and those println's are indicating you haven't 
>> gotten Tomcat webapp debugging set up in your IDE (what are you 
>> using, IntelliJ or Eclipse?) -- I would really recommend doing that, 
>> it's much faster to fix bugs when you can trace them. It's not too 
>> difficult, there should be enough 'Net sources on how to do that, but 
>> feel free to ask questions on that if necessary.
>>
>> Regards,
>> Glen
>>
>>
>> On 01/12/2014 06:19 AM, Gaurav wrote:
>>> Hello Glen,
>>>
>>> Going through the test got another problem, as I told you I have 
>>> created a method getWeblogCategories(), and I was able to get the 
>>> categories listing on front-end (without changing anything in vm). 
>>> But, now when I call this method again from WeblogCategory class in 
>>> method hasCategory (for validating no duplicate category name), It 
>>> did not return the categories.
>>>
>>> Below is new getWeblogCategories() method I created and another 
>>> hasCategory method from where I call this.
>>>
>>> public List<WeblogCategory> getWeblogCategories(){
>>>         List categories = new ArrayList();
>>>         try {
>>>             WeblogEntryManager wmgr = 
>>> WebloggerFactory.getWeblogger().getWeblogEntryManager();
>>> System.out.println("getweblogcategories==========="+getWebsite());
>>>             categories = wmgr.getWeblogCategories(getWebsite());
>>>         } catch (WebloggerException e) {
>>>             log.error("ERROR: getting Categories", e);
>>>         }
>>>         return categories;
>>>     }
>>>
>>> public boolean hasCategory(String name) {
>>>         List<WeblogCategory> cats = getWeblogCategories();
>>> System.out.println("========="+cats); // Return null
>>>         for (WeblogCategory cat : cats) {
>>> System.out.println("=====hascategory====="+name+"========"+cat.getName()); 
>>>
>>>             if(name.equals(cat.getName())) {
>>>                 return true;
>>>             }
>>>         }
>>>         return false;
>>>     }
>>>
>>> Also, there is another method getWeblogCategories, in weblog.java 
>>> this also return me null categories. Although same call in 
>>> WeblogCategoryWrapper give results.
>>> public List getWeblogCategories() {
>>>         WeblogCategory website = new WeblogCategory();
>>> System.out.println("=====getWeblogCategories====WEBLOG====website==="+website); 
>>>
>>>         return website.getWeblogCategories();
>>>     }
>>>
>>> Thanks
>>> Gaurav
>>>
>>> On Sunday 12 January 2014 04:05 PM, Glen Mazza wrote:
>>>> Tests that are just testing that subcategories work can be removed, 
>>>> because we don't have subcategories anymore--this change is making 
>>>> the code simpler, and fewer tests are a consequence of simpler 
>>>> code. Tests that are testing that category name changes work, etc., 
>>>> should be rewritten to be able to iterate through a weblog's 
>>>> category objects as if the categories are in List or Set format, 
>>>> but no more hierarchical iteration as before.  Will that work for you?
>>>>
>>>> Regards,
>>>> Glen
>>>>
>>>> On 01/12/2014 03:21 AM, Gaurav wrote:
>>>>> Hello Glen,
>>>>>
>>>>> I am still not able to correct the maven tests, if I run the tests 
>>>>> they gave some errors, Actually as in many tests they are using 
>>>>> root category for testing, I have also changed and commented some 
>>>>> test cases still not successful in it.
>>>>>
>>>>> I am working and studying about the test cases (jUnit), what you 
>>>>> suggest I should do to correct the test cases ?
>>>>>
>>>>> Thanks
>>>>> Gaurav
>>>>>
>>>>> On Saturday 11 January 2014 05:01 PM, Glen Mazza wrote:
>>>>>> Great! Looking forward to seeing the patch.
>>>>>>
>>>>>> Glen
>>>>>>
>>>>>> On 01/11/2014 03:18 AM, Gaurav wrote:
>>>>>>> Hello Glen,
>>>>>>>
>>>>>>> I just got fixed that issue :). Thanks for all your help. I am 
>>>>>>> done with all the issues and into thee final testing of the 
>>>>>>> weblog all features.
>>>>>>>
>>>>>>> Thanks
>>>>>>> Gaurav
>>>>>>>
>>>>>>>
>>>>>>> On Saturday 11 January 2014 12:20 PM, Gaurav wrote:
>>>>>>>> Hello Glen,
>>>>>>>>
>>>>>>>> I still did not able to get what I should do next, as you told 
>>>>>>>> that showWeblogCategoryLinksList($rootCategory false false) 
>>>>>>>> only bring the toplevel categories, it because we specify the 
>>>>>>>> $rootCategory each time, so automatically rootCategory child 
>>>>>>>> will always going to be top level categories.
>>>>>>>>
>>>>>>>> Actually, my issue is that If I retain the method 
>>>>>>>> getWeblogCategories() in WeblogCategory.java and return a Set 
>>>>>>>> of type WeblogCategory then I have to do a mapping of that Set 
>>>>>>>> in orm.xml like it was previously done
>>>>>>>>
>>>>>>>> <one-to-many name="weblogCategories" mapped-by="parent" 
>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.Weblog" 
>>>>>>>> fetch="LAZY"> </one-to-many>)
>>>>>>>>
>>>>>>>> So, it was previouly mapped by parent, and as now we did not 
>>>>>>>> have any parent, I tried with website but it gave me error as 
>>>>>>>> might be because its target-entity is different. I am really 
>>>>>>>> out of ideas.
>>>>>>>>
>>>>>>>> I was thinking of start submitting patches of my work till now, 
>>>>>>>> as just this issue of showing categories at blog is left.
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Gaurav
>>>>>>>>
>>>>>>>> On Wednesday 08 January 2014 08:42 AM, Glen Mazza wrote:
>>>>>>>>> Hi Gaurav, weblog.weblogCategories should still exist as 
>>>>>>>>> probably a Set of some sort (Set because of no duplicate 
>>>>>>>>> Categories allowed), a List is another option.  A weblog does 
>>>>>>>>> own a collection of categories even with the change. What 
>>>>>>>>> should not exist is some child set of categories under each 
>>>>>>>>> category--any code asking for the latter can be removed 
>>>>>>>>> because there are never any subcategories under a category 
>>>>>>>>> anymore.
>>>>>>>>>
>>>>>>>>> Might you be getting confused with this code?
>>>>>>>>>     #set($categories = $weblog.weblogCategories )
>>>>>>>>>     #foreach( $cat in $categories )
>>>>>>>>>
>>>>>>>>> The above should be fine, you're not for-eaching child 
>>>>>>>>> categories under the *category* but under the *weblog*.
>>>>>>>>>
>>>>>>>>> Grepping the code for "#showWeblogCategoryLinksList", is 
>>>>>>>>> showing that this is its most common usage:
>>>>>>>>>
>>>>>>>>> #showWeblogCategoryLinksList($rootCategory false false)
>>>>>>>>>
>>>>>>>>> I.e., just show the top-level categories with no 
>>>>>>>>> subcategories. With the new code, all three params are useless 
>>>>>>>>> now.
>>>>>>>>>
>>>>>>>>> I think what we need to do is create a new macro:
>>>>>>>>>
>>>>>>>>> #showWeblogCategoryLinksList
>>>>>>>>> that does the same as
>>>>>>>>> #showWeblogCategoryLinksList($rootCategory false false)
>>>>>>>>>
>>>>>>>>> And, for backward compatibility (at least so it compiles), 
>>>>>>>>> have this macro:
>>>>>>>>>
>>>>>>>>> (A) #showWeblogCategoryLinksList($categoryObj $expanding 
>>>>>>>>> $subcats)
>>>>>>>>> ignore all three of its arguments and just call
>>>>>>>>> (B) #showWeblogCategoryLinksList
>>>>>>>>>
>>>>>>>>> So (A) will be a deprecated method to be pulled out at a 
>>>>>>>>> future time (maybe in 5.1) -- we'll have to update each of our 
>>>>>>>>> templates that currently call (A) to have them call (B) 
>>>>>>>>> instead -- a simple change to make.
>>>>>>>>>
>>>>>>>>> I'm not sure if I'm answering your questions but I think this 
>>>>>>>>> might be what you're getting at.
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>> Glen
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 01/07/2014 04:35 PM, Gaurav wrote:
>>>>>>>>>> Hello Glen,
>>>>>>>>>>
>>>>>>>>>> I am completed with the Database, JPA, UI Layer. I have 
>>>>>>>>>> tested all possible ways by creating, deleting, updating 
>>>>>>>>>> entries, categories and also the complete weblog.
>>>>>>>>>> The only single issue left is in Template Layer. Actually in 
>>>>>>>>>> weblog.vm file for iterating categories list for menu and 
>>>>>>>>>> feeds, it uses ($weblog.weblogCategories). It try getting 
>>>>>>>>>> list from WeblogCategory method getWeblogCategories() and 
>>>>>>>>>> wrapping up with WeblogCategoryWrapper and WeblogWrapper 
>>>>>>>>>> classes. But as this method is no longer required, as it was 
>>>>>>>>>> for maintaining relations of parent-child, It did not get any 
>>>>>>>>>> list.
>>>>>>>>>>
>>>>>>>>>> I though of retaining getWeblogCategories() method in 
>>>>>>>>>> WeblogCategory class, and getting list of categories directly 
>>>>>>>>>> from JPAWeblogEntryManager but it seems wrong to me according 
>>>>>>>>>> to the structure. Can you please guide me what should be the 
>>>>>>>>>> best way to go ?
>>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>> Gaurav
>>>>>>>>>>
>>>>>>>>>> On Wednesday 08 January 2014 01:25 AM, Gaurav wrote:
>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>
>>>>>>>>>>> I figured out that issues, as I told when I use 
>>>>>>>>>>> getWeblogCategories() method, then the error comes, actually 
>>>>>>>>>>> its due to  the reason that I have removed below one-to-many 
>>>>>>>>>>> mapping in orm file and still using the method. As you said, 
>>>>>>>>>>> I studied JPA and get some time into it and learned new 
>>>>>>>>>>> things about the mapping relationship. Now, I am thinking of 
>>>>>>>>>>> implementing the same way as getWeblogEntries are listed  as 
>>>>>>>>>>> it also come respect to the weblog/website.
>>>>>>>>>>>
>>>>>>>>>>> <one-to-many name="weblogCategories" mapped-by="parent" 
>>>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.WeblogCategory" 
>>>>>>>>>>> fetch="LAZY"></one-to-many>
>>>>>>>>>>>
>>>>>>>>>>> Thanks
>>>>>>>>>>> Gaurav
>>>>>>>>>>>
>>>>>>>>>>> On Monday 06 January 2014 02:36 AM, Glen Mazza wrote:
>>>>>>>>>>>> I don't know, but I don't like that statement 
>>>>>>>>>>>> "c.getWeblogCategories().add(c); "  A WeblogCategory should 
>>>>>>>>>>>> no longer have child weblog categories (they are pure 
>>>>>>>>>>>> siblings of each other with no hierarchical relationship), 
>>>>>>>>>>>> so such an "add" shouldn't exist.  You can have 
>>>>>>>>>>>> -->Weblog<---.getWeblogCategories().add(c), that would make 
>>>>>>>>>>>> sense.
>>>>>>>>>>>>
>>>>>>>>>>>> Glen
>>>>>>>>>>>>
>>>>>>>>>>>> On 01/05/2014 03:32 PM, Gaurav wrote:
>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I tried finding the that issues, but did not find 
>>>>>>>>>>>>> anywhere. Also it is created dynamically as I changed the 
>>>>>>>>>>>>> entity name to category1 then also sameerror come up with 
>>>>>>>>>>>>> "category1_category1" doesn't exist. I think this might be 
>>>>>>>>>>>>> something I am doing wrong with the code. As, Today I 
>>>>>>>>>>>>> cleaned up all the code and now everything is working 
>>>>>>>>>>>>> good. I am successful in creating, editing and deleting 
>>>>>>>>>>>>> the weblog, entries, categories and everything is showing 
>>>>>>>>>>>>> good.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Just single problem I am having now is showing the 
>>>>>>>>>>>>> categories list in feeds and in menu. I figured out after 
>>>>>>>>>>>>> checking that $categoryObject.getWeblogCategories() is 
>>>>>>>>>>>>> iterated in velocity file which check for the 
>>>>>>>>>>>>> getWeblogCategories() method of type Set in WeblogCategory 
>>>>>>>>>>>>> class, Initially I commented this method as the comments 
>>>>>>>>>>>>> over this method said "Get child categories of this 
>>>>>>>>>>>>> category". But I think this is neccasary as whenever a 
>>>>>>>>>>>>> category is created this is called to add a category to 
>>>>>>>>>>>>> Set "rootCat.getWeblogCategories().add(c);"
>>>>>>>>>>>>>
>>>>>>>>>>>>> Now, Problem is we did not have any parent or root 
>>>>>>>>>>>>> category now, so how it will going to add to that Set and 
>>>>>>>>>>>>> Also I tried creating a object of WeblogCategory Class and 
>>>>>>>>>>>>> tried adding it to getWeblogCategories() method then 
>>>>>>>>>>>>> again. Now When I tired adding category with this 
>>>>>>>>>>>>> "c.getWeblogCategories().add(c);" the same error comes up. 
>>>>>>>>>>>>> If I comment this line that add category, everything works 
>>>>>>>>>>>>> fine again, just did not get any list of categories in 
>>>>>>>>>>>>> menu and feed.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Also, I am confused what setWeblogCategories() is doing as 
>>>>>>>>>>>>> I did not find anywhere where it is used for setting 
>>>>>>>>>>>>> categories. Just the getWeblogCategories() is used with 
>>>>>>>>>>>>> .add for adding child categories to parent/root.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Below is what I done in addWeblogContents method of class 
>>>>>>>>>>>>> JPAWeblogManagerImpl.
>>>>>>>>>>>>>
>>>>>>>>>>>>> if (cats != null && cats.trim().length() > 0) {
>>>>>>>>>>>>>             String[] splitcats = cats.split(",");
>>>>>>>>>>>>>             for (int i=0; i<splitcats.length; i++) {
>>>>>>>>>>>>>                 WeblogCategory c = new WeblogCategory(
>>>>>>>>>>>>>                         newWeblog, // newWeblog
>>>>>>>>>>>>>                         splitcats[i], // name
>>>>>>>>>>>>>                         splitcats[i], // description
>>>>>>>>>>>>>                         null ); // image
>>>>>>>>>>>>>                 if (i == 0) {
>>>>>>>>>>>>>                     firstCat = c;
>>>>>>>>>>>>>                 }
>>>>>>>>>>>>> System.out.println("====Cats==="+c);
>>>>>>>>>>>>> c.getWeblogCategories().add(c); //previously it was 
>>>>>>>>>>>>> root.getWeblogCategories.add(c);
>>>>>>>>>>>>>                 this.strategy.store(c);
>>>>>>>>>>>>>             }
>>>>>>>>>>>>>         }
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> [EL Warning]: 2014-01-05 
>>>>>>>>>>>>> 17:15:22.179--ClientSession(1956103136)--Exception 
>>>>>>>>>>>>> [EclipseLink-4002] (Eclipse Persistence Services - 
>>>>>>>>>>>>> 2.5.0.v20130507-3faac2b): 
>>>>>>>>>>>>> org.eclipse.persistence.exceptions.DatabaseException
>>>>>>>>>>>>> Internal Exception: java.sql.SQLSyntaxErrorException: 
>>>>>>>>>>>>> Table/View 'CATEGORY_CATEGORY' does not exist.
>>>>>>>>>>>>> Error Code: 20000
>>>>>>>>>>>>> Call: INSERT INTO category_category (weblogCategories_id, 
>>>>>>>>>>>>> WeblogCategory_id) VALUES (?, ?)
>>>>>>>>>>>>>     bind => [2 parameters bound]
>>>>>>>>>>>>> Query: DataModifyQuery(name="weblogCategories" sql="INSERT 
>>>>>>>>>>>>> INTO category_category (weblogCategories_id, 
>>>>>>>>>>>>> WeblogCategory_id) VALUES (?, ?)")
>>>>>>>>>>>>> *
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Also I tried making new ArrayList and new getter setter 
>>>>>>>>>>>>> in WeblogCategory class, still I got same error.
>>>>>>>>>>>>>     List<WeblogCategory> catsss = new 
>>>>>>>>>>>>> ArrayList<WeblogCategory>();
>>>>>>>>>>>>>     catsss.add(c);
>>>>>>>>>>>>>     c.setList(catsss);
>>>>>>>>>>>>> System.out.println("======"+catsss+"============"+c.getList()); 
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Got this error, after adding Arraylist.
>>>>>>>>>>>>>
>>>>>>>>>>>>> [EL Warning]: 2014-01-05 
>>>>>>>>>>>>> 19:42:56.209--ClientSession(1732472947)--Exception 
>>>>>>>>>>>>> [EclipseLink-4002] (Eclipse Persistence Services - 
>>>>>>>>>>>>> 2.5.0.v20130507-3faac2b): 
>>>>>>>>>>>>> org.eclipse.persistence.exceptions.DatabaseException
>>>>>>>>>>>>> Internal Exception: java.sql.SQLSyntaxErrorException: 
>>>>>>>>>>>>> Table/View 'CATEGORY_CATEGORY' does not exist.
>>>>>>>>>>>>> Error Code: 20000
>>>>>>>>>>>>> Call: INSERT INTO category_category (list_id, 
>>>>>>>>>>>>> WeblogCategory_id) VALUES (?, ?)
>>>>>>>>>>>>>     bind => [2 parameters bound]
>>>>>>>>>>>>> Query: DataModifyQuery(name="list" sql="INSERT INTO 
>>>>>>>>>>>>> category_category (list_id, WeblogCategory_id) VALUES (?, 
>>>>>>>>>>>>> ?)")
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Sunday 05 January 2014 05:30 AM, Glen Mazza wrote:
>>>>>>>>>>>>>> Hi Gaurav, did you try a "control" with your file search 
>>>>>>>>>>>>>> method? I.e., you're saying you're case-insensitive 
>>>>>>>>>>>>>> searching on "category_category" but nothing is getting 
>>>>>>>>>>>>>> returned -- did you try also searching something that you 
>>>>>>>>>>>>>> *know* exists in the project (say, "class", "public", 
>>>>>>>>>>>>>> "return", etc.) and your IDE/search method indeed did 
>>>>>>>>>>>>>> return lots of matches?  Because if you get zero search 
>>>>>>>>>>>>>> results with the latter we know the problem is with the 
>>>>>>>>>>>>>> way you're configuring your search, not the non-existence 
>>>>>>>>>>>>>> of "category_category". (Also are you searching on every 
>>>>>>>>>>>>>> type of file extension, not just .java files?)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Somewhere in your code the JPA layer has decided to 
>>>>>>>>>>>>>> calculate "category_category" as a table name, I would 
>>>>>>>>>>>>>> guess because that's what is exactly in the code 
>>>>>>>>>>>>>> someplace (as you can see the query below generated 
>>>>>>>>>>>>>> "...FROM category_category t0, category t1..."). One 
>>>>>>>>>>>>>> useful experiment might be to rename the "category" table 
>>>>>>>>>>>>>> (t1) above to "category2" -- would the SQL above change 
>>>>>>>>>>>>>> to "category2_category2, category2..." or (I think) 
>>>>>>>>>>>>>> "...FROM category_category t0, category2 t1...") If the 
>>>>>>>>>>>>>> former, that would indicate that "category2_category2" is 
>>>>>>>>>>>>>> being dynamically generated from the "category2" table 
>>>>>>>>>>>>>> name. If the latter, that would mean "category_category" 
>>>>>>>>>>>>>> is hardcoded somewhere and not related to the "category" 
>>>>>>>>>>>>>> table name you've properly configured.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I probably won't be able to get to this until next 
>>>>>>>>>>>>>> weekend anyway, so I'm going to have you finish it, also 
>>>>>>>>>>>>>> as a confidence-builder for you (if you let JPA push you 
>>>>>>>>>>>>>> around now, it's always going to bully you...  :)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> PS:  Just to clarify, when an pre-5.1-SNAPSHOT user 
>>>>>>>>>>>>>> installs Roller 5.1-SNAPSHOT, the Roller startup should 
>>>>>>>>>>>>>> automatically detect that the system is currently using 
>>>>>>>>>>>>>> an older Roller database and do the database upgrade 
>>>>>>>>>>>>>> (creating of new the "category" table and prepopulation 
>>>>>>>>>>>>>> of it). Roller has always done this as so long as you put 
>>>>>>>>>>>>>> the necessary migration scripts in the right place there 
>>>>>>>>>>>>>> should be no problem. However, those of us already on 
>>>>>>>>>>>>>> 5.1-SNAPSHOT like myself before your patch will need to 
>>>>>>>>>>>>>> manually create that table in our database (the Roller 
>>>>>>>>>>>>>> script won't notice 5.1-SNAPSHOT-->5.1-SNAPSHOT, so won't 
>>>>>>>>>>>>>> create "category" by itself.)  No problem, we'll just 
>>>>>>>>>>>>>> figure out the necessary SQL statements for Dave and he 
>>>>>>>>>>>>>> can add it to his Roller project blog.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 01/04/2014 04:47 PM, Gaurav wrote:
>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I searched whole project and did not find anywhere. I 
>>>>>>>>>>>>>>> think might be I have done something wrong, as when I 
>>>>>>>>>>>>>>> start with new database, everything work just deleting 
>>>>>>>>>>>>>>> gives me this error. If I work on old database it even 
>>>>>>>>>>>>>>> did not start up (localhost:8080/roller) gives my below 
>>>>>>>>>>>>>>> error.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I have checked almost everything I can, might be some 
>>>>>>>>>>>>>>> wrong java code and anything I done wrong that causes 
>>>>>>>>>>>>>>> this. Should I submit by work so you can look on to it, 
>>>>>>>>>>>>>>> or if we are not in any hurry than I can look into it 
>>>>>>>>>>>>>>> again step by step (I prefer second option if we have 
>>>>>>>>>>>>>>> one more week. Just another week or so, next week i have 
>>>>>>>>>>>>>>> some tight schedule). I know I am taking too much time, 
>>>>>>>>>>>>>>> but I am new to this level of Java code, as I worked 
>>>>>>>>>>>>>>> maximum time at client side. But I really loving java 
>>>>>>>>>>>>>>> code and learned a lot till now, before this I just 
>>>>>>>>>>>>>>> worked with Java on small projects. OpenSource Projects 
>>>>>>>>>>>>>>> really are very powerful and good way to learn new things.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Exception [EclipseLink-4002] (Eclipse Persistence 
>>>>>>>>>>>>>>> Services - 2.5.0.v20130507-3faac2b): 
>>>>>>>>>>>>>>> org.eclipse.persistence.exceptions.DatabaseException 
>>>>>>>>>>>>>>> Internal Exception: 
>>>>>>>>>>>>>>> com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: 
>>>>>>>>>>>>>>> Table 'roller.category_category' doesn't exist Error 
>>>>>>>>>>>>>>> Code: 1146 Call: SELECT t1.id, t1.description, t1.image, 
>>>>>>>>>>>>>>> t1.name, t1.websiteid FROM category_category t0, 
>>>>>>>>>>>>>>> category t1 WHERE ((t0.WeblogCategory_id = ?) AND (t1.id 
>>>>>>>>>>>>>>> = t0.weblogCategories_id)) bind => [1 parameter bound] 
>>>>>>>>>>>>>>> Query: ReadAllQuery(name="weblogCategories" 
>>>>>>>>>>>>>>> referenceClass=WeblogCategory sql="SELECT t1.id, 
>>>>>>>>>>>>>>> t1.description, t1.image, t1.name, t1.websiteid FROM 
>>>>>>>>>>>>>>> category_category t0, category t1 WHERE 
>>>>>>>>>>>>>>> ((t0.WeblogCategory_id = ?) AND (t1.id = 
>>>>>>>>>>>>>>> t0.weblogCategories_id))")
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Sunday 05 January 2014 12:00 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>> Hi Gaurav, no, that relation shouldn't be needed anymore.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> As for the table name, at the top of your orm.xml file 
>>>>>>>>>>>>>>>> the table name the file maps against is declared -- 
>>>>>>>>>>>>>>>> perhaps you accidentally called it category_category. I 
>>>>>>>>>>>>>>>> would grep or use a file search from your IDE of your 
>>>>>>>>>>>>>>>> entire roller source code, looking for where 
>>>>>>>>>>>>>>>> category_category is being declared -- (probably) has 
>>>>>>>>>>>>>>>> to be there someplace. (More specifically, do a file 
>>>>>>>>>>>>>>>> search on "DataModifyQuery" -- that's probably exactly 
>>>>>>>>>>>>>>>> where the problem is.)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Once working, try to import the latest code changes 
>>>>>>>>>>>>>>>> into your code before submitting a patch (actually 
>>>>>>>>>>>>>>>> create a backup patch first just in case).  Not sure 
>>>>>>>>>>>>>>>> but I think a simple svn update will do -- svn will 
>>>>>>>>>>>>>>>> identify some files where it will need your assistance 
>>>>>>>>>>>>>>>> to resolve any differences -- it shouldn't be too hard 
>>>>>>>>>>>>>>>> or time-consuming to do.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On 01/04/2014 08:55 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I just want to know that the below relations in 
>>>>>>>>>>>>>>>>> WeblogCategory.orm.xml are required or not as now the 
>>>>>>>>>>>>>>>>> parent is not used so, I don't think its needed now. I 
>>>>>>>>>>>>>>>>> have commented the below lines.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> <many-to-one name="parent" 
>>>>>>>>>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.Category"> 
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>                 <join-column name="parentid" 
>>>>>>>>>>>>>>>>> insertable="true" updatable="true" nullable="true"/>
>>>>>>>>>>>>>>>>>             </many-to-one>
>>>>>>>>>>>>>>>>>             <one-to-many name="weblogCategories" 
>>>>>>>>>>>>>>>>> mapped-by="parent" 
>>>>>>>>>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.Category" 
>>>>>>>>>>>>>>>>> fetch="LAZY">
>>>>>>>>>>>>>>>>>                 <cascade>
>>>>>>>>>>>>>>>>> <cascade-remove/>
>>>>>>>>>>>>>>>>>                 </cascade>
>>>>>>>>>>>>>>>>>             </one-to-many>
>>>>>>>>>>>>>>>>>             <transient name="inUse"/>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I asked this because, getting categories giving me 
>>>>>>>>>>>>>>>>> mysql exception. The new table is 'roller.category' 
>>>>>>>>>>>>>>>>> but it executes for 'roller.category_category'.
>>>>>>>>>>>>>>>>> I am not able to get what I have done wrong.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Internal Exception: 
>>>>>>>>>>>>>>>>> com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: 
>>>>>>>>>>>>>>>>> Table 'roller.category_category' doesn't exist
>>>>>>>>>>>>>>>>> Error Code: 1146
>>>>>>>>>>>>>>>>> Call: DELETE FROM category_category WHERE 
>>>>>>>>>>>>>>>>> (WeblogCategory_id = ?)
>>>>>>>>>>>>>>>>>     bind => [1 parameter bound]
>>>>>>>>>>>>>>>>> Query: DataModifyQuery(name="weblogCategories" 
>>>>>>>>>>>>>>>>> sql="DELETE FROM category_category WHERE 
>>>>>>>>>>>>>>>>> (WeblogCategory_id = ?)")
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Also, I have changed the getWeblogCategoryByPath to 
>>>>>>>>>>>>>>>>> getWeblogCategoryByName so feeds and other places work 
>>>>>>>>>>>>>>>>> fine. I have able to get catgeory list, new entries 
>>>>>>>>>>>>>>>>> are creating successfully. Just deleting the weblog is 
>>>>>>>>>>>>>>>>> giving me above error.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Saturday 04 January 2014 12:53 PM, Gaurav wrote:
>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> I have already deleted getPath and getParent and in 
>>>>>>>>>>>>>>>>>> the mid of everything. I hope I will be able to 
>>>>>>>>>>>>>>>>>> complete this by Monday. If still, I get some major 
>>>>>>>>>>>>>>>>>> issues due to this, I will switch to what you 
>>>>>>>>>>>>>>>>>> suggested. Just give me time till Monday, as I have 
>>>>>>>>>>>>>>>>>> done almost 80% of code cleaned regarding the path 
>>>>>>>>>>>>>>>>>> and parentcategory. I will get back to you soon with 
>>>>>>>>>>>>>>>>>> some patches and then you can test it.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Also, my ICLA have been filed, got the receipt of my 
>>>>>>>>>>>>>>>>>> ICLA.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Wednesday 01 January 2014 08:07 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>> Gaurav, sorry, it just occurred to me there's a 
>>>>>>>>>>>>>>>>>>> simpler intermediate step that can be done. While we 
>>>>>>>>>>>>>>>>>>> need the database table without a path column, and 
>>>>>>>>>>>>>>>>>>> to remove the "path" member *variable* from 
>>>>>>>>>>>>>>>>>>> WeblogCategory (or its replacement), we can still 
>>>>>>>>>>>>>>>>>>> keep indefinitely keep getPath(), just hardcode it 
>>>>>>>>>>>>>>>>>>> to "/" + categoryName, which is precisely what the 
>>>>>>>>>>>>>>>>>>> old code returns for any top-level category--the 
>>>>>>>>>>>>>>>>>>> rest of the system can stay just as it did before. 
>>>>>>>>>>>>>>>>>>> Switching the rest of the code from getPath() to 
>>>>>>>>>>>>>>>>>>> using getName() can be done at any time, bit by bit 
>>>>>>>>>>>>>>>>>>> whenever, that's not necessary to implement 
>>>>>>>>>>>>>>>>>>> positioning, that's just a code cleanup issue. 
>>>>>>>>>>>>>>>>>>> Likewise, for WeblogCategory.getParent(), it may be 
>>>>>>>>>>>>>>>>>>> as simple as adding a root category object as part 
>>>>>>>>>>>>>>>>>>> of the Weblog's constructor (but not saved to the 
>>>>>>>>>>>>>>>>>>> database), and having WeblogCategory.getParent() 
>>>>>>>>>>>>>>>>>>> just return website.getParentCategory()--that way 
>>>>>>>>>>>>>>>>>>> all categories for a weblog will have the same root 
>>>>>>>>>>>>>>>>>>> category as before, and the rest of the code base 
>>>>>>>>>>>>>>>>>>> should function fine. Once we're on the new table, 
>>>>>>>>>>>>>>>>>>> then it's an issue of implementing 
>>>>>>>>>>>>>>>>>>> positioning--getting rid of getParent() and 
>>>>>>>>>>>>>>>>>>> getPath() can be done by anybody at a later date.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> On 12/31/2013 08:09 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>> No problem, I'm available to help (or finish it up) 
>>>>>>>>>>>>>>>>>>>> if needed. For a seemingly simple switch, you're 
>>>>>>>>>>>>>>>>>>>> certainly getting a *full* education of the Roller 
>>>>>>>>>>>>>>>>>>>> codebase.  :)
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> BTW, I hope you're not testing via mvn jetty:run, 
>>>>>>>>>>>>>>>>>>>> as that requires you to keep logging in for the 
>>>>>>>>>>>>>>>>>>>> first time, creating a blog for the first time, 
>>>>>>>>>>>>>>>>>>>> etc., whenever you start it. Very inefficient and 
>>>>>>>>>>>>>>>>>>>> tiring. Normally I just build (mvn clean install) 
>>>>>>>>>>>>>>>>>>>> and dump the WAR into standalone Tomcat on my local 
>>>>>>>>>>>>>>>>>>>> machine. The database & other configuration I keep 
>>>>>>>>>>>>>>>>>>>> permanently in roller-custom.properties in the 
>>>>>>>>>>>>>>>>>>>> Tomcat lib/ folder, so the new WAR just takes over 
>>>>>>>>>>>>>>>>>>>> with the same configuration, blogs, accounts, etc., 
>>>>>>>>>>>>>>>>>>>> that old WAR was using. (Check the Roller install 
>>>>>>>>>>>>>>>>>>>> guide for full instructions.)
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Also vital is that you know how to debug/trace 
>>>>>>>>>>>>>>>>>>>> Roller code in Eclipse or IntelliJ while it is 
>>>>>>>>>>>>>>>>>>>> running on Tomcat (or another servlet container). 
>>>>>>>>>>>>>>>>>>>> It's much simpler than it seems, and will save you 
>>>>>>>>>>>>>>>>>>>> a lot of time. These instructions are for Eclipse 
>>>>>>>>>>>>>>>>>>>> but Intellij (my preference) is basically the same: 
>>>>>>>>>>>>>>>>>>>> http://www.jroller.com/gmazza/entry/eclipse_debug_web_services#ec3. 
>>>>>>>>>>>>>>>>>>>> Checking variable values while it's running will 
>>>>>>>>>>>>>>>>>>>> point you to where problems are much more quickly.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Happy New Year!
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> On 12/31/2013 06:39 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> As, I previously told you that the test cases are 
>>>>>>>>>>>>>>>>>>>>> giving problem, actually I think we have to do 
>>>>>>>>>>>>>>>>>>>>> some changes in Test Cases also, as many of the 
>>>>>>>>>>>>>>>>>>>>> methods involving path and parent are removed so, 
>>>>>>>>>>>>>>>>>>>>> many times in test cases (it did not get correct 
>>>>>>>>>>>>>>>>>>>>> values and give errors).
>>>>>>>>>>>>>>>>>>>>> I have successfully showed the categories by 
>>>>>>>>>>>>>>>>>>>>> website till now in the admin section. Also, the 
>>>>>>>>>>>>>>>>>>>>> entries are saved just, I ran out of memory issue 
>>>>>>>>>>>>>>>>>>>>> in happen when I save an entry that entry, 
>>>>>>>>>>>>>>>>>>>>> although it get saved when I refresh the page.
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Also, as their is not path now, we have to do some 
>>>>>>>>>>>>>>>>>>>>> changes in velocity files, as feeds are giving 
>>>>>>>>>>>>>>>>>>>>> error in showing, although if I direct enter the 
>>>>>>>>>>>>>>>>>>>>> URL its working fine. I have cleared many parts of 
>>>>>>>>>>>>>>>>>>>>> the code, just I have test of the roller parts 
>>>>>>>>>>>>>>>>>>>>> which are linked the path and parent. I am 
>>>>>>>>>>>>>>>>>>>>> thinking of correcting the test cases, as I can 
>>>>>>>>>>>>>>>>>>>>> run them and if test cases are fine then might be 
>>>>>>>>>>>>>>>>>>>>> everything will work fine.
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> I will return to work on this after 3 days, as I 
>>>>>>>>>>>>>>>>>>>>> will be and will get be to it during coming 
>>>>>>>>>>>>>>>>>>>>> weekend again. I will wrap this out asap for you 
>>>>>>>>>>>>>>>>>>>>> to test and will attach patches coming weekend.
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 05:49 PM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>> Thanks for that info, I have changed my settings 
>>>>>>>>>>>>>>>>>>>>>> in the eclipse.
>>>>>>>>>>>>>>>>>>>>>> Yes, you are right I will leave the ordering part 
>>>>>>>>>>>>>>>>>>>>>> for now and work on clearing the code for now. 
>>>>>>>>>>>>>>>>>>>>>> For now I will just add a column in category 
>>>>>>>>>>>>>>>>>>>>>> table with position, leaving it null for now.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 05:33 PM, Glen Mazza 
>>>>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>>>>> Your last ImprovedCreateUser.patch had some tab 
>>>>>>>>>>>>>>>>>>>>>>> characters in it, and our project uses spaces 
>>>>>>>>>>>>>>>>>>>>>>> for tabs (just have Eclipse insert 4 spaces 
>>>>>>>>>>>>>>>>>>>>>>> whenever you hit the tab key, with no tab 
>>>>>>>>>>>>>>>>>>>>>>> characters.) Very few Apache projects (any?) are 
>>>>>>>>>>>>>>>>>>>>>>> tab-indented today. It is a simple fix with 
>>>>>>>>>>>>>>>>>>>>>>> IntelliJ IDEA (Edit -> Convert Indents -> To 
>>>>>>>>>>>>>>>>>>>>>>> Spaces), I'm sure Eclipse has an equivalent.
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>> For blogs migrating from pre-5.1 versions, we 
>>>>>>>>>>>>>>>>>>>>>>> can keep the position NULL by default (and when 
>>>>>>>>>>>>>>>>>>>>>>> you order by position, with null values, they 
>>>>>>>>>>>>>>>>>>>>>>> will come out in any order, like they do today.) 
>>>>>>>>>>>>>>>>>>>>>>> Whenever a new blog is created with the default 
>>>>>>>>>>>>>>>>>>>>>>> three categories, those can be assigned 
>>>>>>>>>>>>>>>>>>>>>>> positions (probably 0-based for leftmost is 
>>>>>>>>>>>>>>>>>>>>>>> best.) For migrated blogs, once the user goes to 
>>>>>>>>>>>>>>>>>>>>>>> the category page and makes a change for the 
>>>>>>>>>>>>>>>>>>>>>>> first time, numbers can be written for the very 
>>>>>>>>>>>>>>>>>>>>>>> first time--no special extra UI is needed for 
>>>>>>>>>>>>>>>>>>>>>>> this purpose. But like I was saying, this is 
>>>>>>>>>>>>>>>>>>>>>>> such a lengthy patch you may wish to forget 
>>>>>>>>>>>>>>>>>>>>>>> about the ordering right now--it doesn't work 
>>>>>>>>>>>>>>>>>>>>>>> anyway in Roller right now. It may be best to 
>>>>>>>>>>>>>>>>>>>>>>> get us to the new table and get rid of the 
>>>>>>>>>>>>>>>>>>>>>>> paths, and once we're on that firmer foundation 
>>>>>>>>>>>>>>>>>>>>>>> implementing positioning (on the Category page 
>>>>>>>>>>>>>>>>>>>>>>> and in the templates) will be much simpler.
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>> On 12/28/2013 06:14 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> I will change the position to be integer, and 
>>>>>>>>>>>>>>>>>>>>>>>> will exclude the category where parent null, 
>>>>>>>>>>>>>>>>>>>>>>>> but still what can be done for the position as 
>>>>>>>>>>>>>>>>>>>>>>>> the old data did not have position, so how and 
>>>>>>>>>>>>>>>>>>>>>>>> on what basis we have to add position to it. I 
>>>>>>>>>>>>>>>>>>>>>>>> was thinking that we can left it as null, and 
>>>>>>>>>>>>>>>>>>>>>>>> provide some UI in backend where user can 
>>>>>>>>>>>>>>>>>>>>>>>> assign position themselves.
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> I will take care of spacing, will search what I 
>>>>>>>>>>>>>>>>>>>>>>>> am doing wrong. As, I am not sure is that you 
>>>>>>>>>>>>>>>>>>>>>>>> are talking about formatting the code, or 
>>>>>>>>>>>>>>>>>>>>>>>> anything else. As I use tab (with 4 spaces) in 
>>>>>>>>>>>>>>>>>>>>>>>> Eclipse IDE.
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 04:27 PM, Glen 
>>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>> BTW, not to be hated, but make sure any code 
>>>>>>>>>>>>>>>>>>>>>>>>> you submit is space-padded (4 spaces), *not* 
>>>>>>>>>>>>>>>>>>>>>>>>> tab-padded. Your IDE should be able to convert 
>>>>>>>>>>>>>>>>>>>>>>>>> it for you if you've been doing tab-padding.
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>> On 12/28/2013 05:06 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> I am confused on how to add and on what basis 
>>>>>>>>>>>>>>>>>>>>>>>>>> we have to addd position to the new category 
>>>>>>>>>>>>>>>>>>>>>>>>>> table. Below two sql commands can be used for 
>>>>>>>>>>>>>>>>>>>>>>>>>> coping data and deleting the root categories.
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> create table category (
>>>>>>>>>>>>>>>>>>>>>>>>>>     id varchar(48) not null primary key,
>>>>>>>>>>>>>>>>>>>>>>>>>>     name varchar(255) not null,
>>>>>>>>>>>>>>>>>>>>>>>>>>     description varchar(255),
>>>>>>>>>>>>>>>>>>>>>>>>>>     websiteid varchar(48) not null,
>>>>>>>>>>>>>>>>>>>>>>>>>>     image varchar(255),
>>>>>>>>>>>>>>>>>>>>>>>>>>     position varchar(48)
>>>>>>>>>>>>>>>>>>>>>>>>>> );
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> insert into 
>>>>>>>>>>>>>>>>>>>>>>>>>> category(id,name,description,websiteid,image) 
>>>>>>>>>>>>>>>>>>>>>>>>>> select id,name,description,websiteid,image 
>>>>>>>>>>>>>>>>>>>>>>>>>> from weblogcategory;
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> delete from category where name="root";
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> What do you suggest for this ?
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 06:56 AM, Glen 
>>>>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>> Take your time, this is a messy change as it 
>>>>>>>>>>>>>>>>>>>>>>>>>>> affects many areas of the code. But Roller 
>>>>>>>>>>>>>>>>>>>>>>>>>>> will be architecturally much more solid and 
>>>>>>>>>>>>>>>>>>>>>>>>>>> simpler once this change is done.  I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>> your ROL-1616 and ROL-1982 on my plate for 
>>>>>>>>>>>>>>>>>>>>>>>>>>> this weekend.
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/27/2013 02:40 PM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have deleted the path and all related 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods, but its seems to me that the path 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods like (getWeblogCategoryByPath) and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> many other path and parent related methods, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> are scattered over the whole roller. There 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> are many occurrence of these methods and I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> have to sort out each piece of code as now 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> there is no path so, mostly we check for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> categoryPath != null in if conditions, so 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> these are no longer needed.
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Also, I as thinking after testing and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> completing this we can delete the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> WeblogCategory and replace with Category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> method, as it will be clean. I also figured 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> out why my tests are failing as during 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> creating of weblogentry it did not find the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories, as that class was using old 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> WeblogCategory table and using that class 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods. I think I will definitely will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> figure out everything at the end and will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> successfully test with the unit tests.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am now in the editor part so can display 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> the categories on front end, I am now all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> over the 1-2-3-4 steps you mentioned. As 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> soon as I will able to display the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories (small issues left) at the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> backend, I will again go through my 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> changes. Also, at this time I can only 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> create patch for new table and migration 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> script, as all other classes code are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> interrelated so can't submit now. I will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> test every single thing related to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories, then I will submit my patches.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Although I have learned a lot new things, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> just spent last two full days on this 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> sorting out things, many times ending up 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> nowhere from where I started. But I am 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> confident that I will definitely complete 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> this task. Just I am worrying that I must 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> be taking too much time.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> If there is something, you can advice me I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> would happy to follow that also.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Friday 27 December 2013 05:09 AM, Glen 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> If it helps, you can provide interim 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> patches, so long as it doesn't break the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> current code base. You may want to create 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> a patch just creating the new database 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> table (which will be ignored by the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> current code) and sql insert-select 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> scripts to move from the current table to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the new one, then one converting the code 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to using the new table without sorting, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> then (finally) one that implements sorting 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> of the categories.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/26/2013 08:12 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have created and updated all necessary 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> files in JPA and for database, I tried 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> compiling the code it gave me errors in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> test cases. As I am not sure that what I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> am wrong in this. Although I tried 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> compiling without running test cases, it 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> worked fine. I tested it with tomcat and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new table category is created and initial 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> category (General, Finance and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Technology) are created with the position 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1,2,3. Still there are many thing I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to clean up and sort out and will test it 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> again.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thursday 26 December 2013 03:31 PM, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Ok, got your point. I will check on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> other Roller parts also if parent name 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and path aren't be using in any other 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> part of Roller. I will go into the RSS 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and Atom feeds later on, and see what 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> changes it need. As, till now I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> changed many files and created some, so 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will first test this part then go into 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that feeds part.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thursday 26 December 2013 03:23 PM, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Sounds good, but may require more work 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to make sure all is good with the RSS 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and Atom feeds as a result (which I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> believe rely on path). Where path is 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> used to check for equivalence, I guess 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> name (and blog/website ID, if 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> necessary) alone will do now. We may 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> need to check (if we aren't already) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that no two categories have the same 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> name, where prior we were checking that 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> no two paths are the same (i.e., 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> allowing category paths 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> USStates/Georgia and Countries/Georgia 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> but now needing to disallow two 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories named "Georgia".)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/26/2013 12:47 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am thinking of removing the path 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> coloumn also, as it does not make 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sense now as there will no 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> subcategories and all will have same 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> path (like /categoryname). WDYT ?
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Wednesday 25 December 2013 04:05 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Yes, the root category can be nuked.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/25/2013 05:28 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I want to know as now all the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories will be top level, so the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> root category which is created by 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> default on addWeblog isn't needed. 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> So, I can remove that code also ? I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> am in half completed with the 1-2 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> steps will soon submit some patched 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> in jira issue. You can look on to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> them whenever you will get time from 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> other projects.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Merry Christmas :)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tuesday 24 December 2013 10:57 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks a lot for replying soon on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> this, I understand your 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> commitments. As this will give me 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> more time on working on this issue. 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I will give my 100% on this, as I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> also want to get into more and more 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> open source projects. For Now I am 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> focusing on Roller for starting my 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> contributions in open source.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tuesday 24 December 2013 10:51 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> No, not a rush (unfortunately I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> can't help much right now either, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> as my other project JSPWiki has a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new release going out.) But please 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> be patient with us on your recent 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> submitted patches -- we haven't 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> forgotten you and are happy with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> your efforts on this project so 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> far, we just have full-time jobs 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and, even after that, other 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> obligations -- for open source 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> work, we usually have to beg, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> borrow and steal time to work on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> them.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/24/2013 12:05 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am going through this having 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> some issues, although not major 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> till now. I have still working on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1-2 steps, might be I am slow as 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> get less time. (Wish we also have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> holidays of this festive season 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> in India :P) Just want to know 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> isn't there any hurry for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> completing this asap ? Although, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am sure will definitely 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> complete this as I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> understood the structure of 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller completely. Just I have to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> go through the JPA more and read 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> about this.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 21 December 2013 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 04:59 PM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Looking good. Anything you're 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> missing will become apparent to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> you as you work along. The 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller installation guide and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> here 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (http://www.jroller.com/gmazza/entry/apache_derby_setup) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> can show you how to test also 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> with Derby if you'd like. (It is 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> usually simpler than MySQL, and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> another benefit of working on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller is that you become 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> multiple-database-lingual very 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> quickly.)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/21/2013 06:16 AM, Gaurav 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks for helping in this and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I with this much deep 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> information, I can start 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> working in it. I have started 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> working on this Issue and have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> followed your steps.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1. Created a new table in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> createdb.vm and in migration 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> scripts also. I have for mow 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> stared working on MySQL.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2. In JPAWeblogEntryManagerImpl 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> class, I have commented 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> updatePathTree and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> getRootWeblogCategory methods
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3. I have created a new file 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> for now Category.orm.xml and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> enterd details of new table. A 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new class Category in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> weblogger/pojos.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have created new files for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> now and will work on this and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> add new position coloum and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> code regarding this. Other than 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> UI and template Layer, I think 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have covered all files on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> which I have to work on the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Database and JPA layers ? 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Please tell me if I am wrong 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> anywhere or following wrong 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> workflow.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 21 December 2013 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 04:59 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hi Gaurav, we use Velocity for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> our database scripts -- you 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> see a createdb.vm plus 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> migration scripts (5.0 to 5.1) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> -- we'll want our change in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> both places (IIRC), new users 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> have the createdb run and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller upgraders with their 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> current DB's have the 5.0 to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 5.1 migration script run.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> We have multiple issues here 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and I'd like to get this done 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> right (I plan on helping out 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> where you'd like). Namely, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> we've moved from a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hierarchical category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> structure (categories having 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> subcategories having their own 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> subcatorgories etc.) to a flat 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> single-level structure (all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories are top level) -- 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that was done a week or so 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> back. Problem is, the database 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> tables are still assuming 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hierarchical (they will work 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> with flat structures but are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> overkill--we don't need a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> parent ID column anymore.) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Also, the JPA objects are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> designed for hierarchical but 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> can simplified a bit more to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> flat structure. Incidentally, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> "sequenceNum" is ambiguous 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> about what it means, I would 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> say "position" or "ordering" 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (INT null, null for migrators 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> who don't yet have a position 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> defined) is clearer.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I think the simplest way to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> handle this--for both new 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> installers and upgraders--is:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.)  Database: To create a new 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> table, say "category" designed 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> precisely as we need, and have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the migration scripts select 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> from the old weblogcategory 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and insert into the new 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> category table. (We then 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ignore the weblogcategory 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> table.) We'll need to test the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> scripts with at least two 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> databases (2 of probably 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> MySQL, Derby and/or 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PostgreSQL) and guess for the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> others--if we're wrong the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> user community can supply a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> patch fixing it.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.) JPA: The JPA persistence 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> object (the old 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> WeblogCategory) will need 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> simplifying/restructuring as 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> it's now flat-level. Indeed, I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> think things will get a *lot* 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> simpler here, as it may just 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> be the parent Weblog holding a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> list of some sort of Category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> objects--that's it.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.) UI Layer: The category.jsp 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (or whatever it's called) and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> its Struts action class will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> now need to use the new 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Category object (and table) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> instead of WeblogCategory. The 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> UI page will need two changes: 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (1) all new categories will be 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> placed (and saved) at the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> bottom of the category list 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (and as result, appear last 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (right-most) in the category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> list, and, later (2) probably 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> have up and down buttons in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the table allowing users to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> easily reorder the categories 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> as they like. (Strictly 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> speaking, 1 alone is all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that's needed for ordering, as 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> you can 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> remove/name/delete/recreate 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories to eventually get 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> them in the position you'd 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> like, but (2) of course is 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> much nicer.)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 4.) Template layer (haven't 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> looked into this): The 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> templates (probably just a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> macro or two) will need 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> updating to ensure that they 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> output the category names per 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the new position order.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> It's a lot of work, but one 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> advantage is that I'd like to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> do the same thing with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> bookmarks/blogrolls (team 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> discussion pending...), switch 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> from a hierarchical to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> flat-level for those too.  If 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> we can do this for categories, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the logic/UI design, etc., 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will carry over 100% to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> bookmarks.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I was planning on eventually 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> getting to this myself, so am 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> available to work with you on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> whatever parts you'd like. I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> think going in order 1-2-3-4 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and having separate commits 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> may be the cleanest way of 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> doing this. What's nice about 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> using a brand new table and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> JPA object is that the old 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> objects can still work in the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> code while we're creating the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new, we just don't activate 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the new until the very end.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> WDYT?  (Also, other team 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> members on the above 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ideas...?) Or are there other 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller tasks you'd like to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sink your teeth into instead? 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I can look at this otherwise, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> but this looks like a very 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> good exercise for someone 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wanting to get more involved 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> in Roller, as it covers all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the layers of the webapp.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/20/2013 10:43 AM, Gaurav 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have started working on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ROL-1981, as discussed in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> previous discussion threads I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will add new column 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sequenceNum in weblogcategory 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> table. Then we can assign 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sequenceNum to each category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> according to websideid. If 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> anyone have some ideas 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> regarding this, please help 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> me. Also, need some help on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> how to go with this issue, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and how to add new coloum, I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> found .sql file, do I need to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> add there new column. Also, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Is this possible that that 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> when I restart the roller it 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will add new column to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> database ?
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks for Any ideas/help.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [1] - 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> https://issues.apache.org/jira/browse/ROL-1981 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>


Re: ROL-1981 Category ordering

Posted by Gaurav <ga...@gmail.com>.
Hello Glen,

Ok. I got your point. So, Can I look into ROL-1982 and check that. Also, 
I my ICLA has been accepted. If roller community can recommend me as 
committer or I have to get more involved in Roller and complete more 
issues ?

Thanks
Gaurav

On Monday 27 January 2014 10:48 AM, Glen Mazza wrote:
> No, you didn't disappoint me, ROL-1981 again is a *very* messy task, I 
> think the application will be much cleaner once this is done.  I'm 
> trying the much smaller step-by-step approach I had suggested earlier 
> (it's too many moving parts to do all at once) -- just to hardcode 
> getPath() and getParent() so the underlying member variables can be 
> removed, that can get us to a new table.  Later, references to 
> getPath() and getParent() can be removed whenever. Sure, your code now 
> would be fine, but your work appears subsequent to what I'm trying to 
> do right now.
>
> Cheers,
> Glen
>
>
> On 01/26/2014 11:25 PM, Gaurav wrote:
>> Hello Glen,
>>
>> I know I disappointed you in this task. Honestly Speaking I am just 
>> left with single issue of getting the category list, as you suggested 
>> the getweblogcategories should be in weblog manager. I tried with 
>> that also, then the issue was that I am unable to get website in 
>> CategoryAdd so I can pass it to getweblogcategories method. (Actually 
>> this is for checking that no two categories has same name). The 
>> problem actually is getweblogcategories(website) need parameter 
>> website to return the list, at some places I am unable to get the 
>> website.
>>
>> I can do one thing, can I submit the patches for the work I have done 
>> till now, so you can take my changes and work on to it. Might be this 
>> will reduce your more than half of the work. What you say ?
>>
>> Thanks
>> Gaurav
>>
>


Re: ROL-1981 Category ordering

Posted by Glen Mazza <gl...@gmail.com>.
No, you didn't disappoint me, ROL-1981 again is a *very* messy task, I 
think the application will be much cleaner once this is done.  I'm 
trying the much smaller step-by-step approach I had suggested earlier 
(it's too many moving parts to do all at once) -- just to hardcode 
getPath() and getParent() so the underlying member variables can be 
removed, that can get us to a new table.  Later, references to getPath() 
and getParent() can be removed whenever.  Sure, your code now would be 
fine, but your work appears subsequent to what I'm trying to do right now.

Cheers,
Glen


On 01/26/2014 11:25 PM, Gaurav wrote:
> Hello Glen,
>
> I know I disappointed you in this task. Honestly Speaking I am just 
> left with single issue of getting the category list, as you suggested 
> the getweblogcategories should be in weblog manager. I tried with that 
> also, then the issue was that I am unable to get website in 
> CategoryAdd so I can pass it to getweblogcategories method. (Actually 
> this is for checking that no two categories has same name). The 
> problem actually is getweblogcategories(website) need parameter 
> website to return the list, at some places I am unable to get the 
> website.
>
> I can do one thing, can I submit the patches for the work I have done 
> till now, so you can take my changes and work on to it. Might be this 
> will reduce your more than half of the work. What you say ?
>
> Thanks
> Gaurav
>


Re: ROL-1981 Category ordering

Posted by Gaurav <ga...@gmail.com>.
Hello Glen,

I know I disappointed you in this task. Honestly Speaking I am just left 
with single issue of getting the category list, as you suggested the 
getweblogcategories should be in weblog manager. I tried with that also, 
then the issue was that I am unable to get website in CategoryAdd so I 
can pass it to getweblogcategories method. (Actually this is for 
checking that no two categories has same name). The problem actually is 
getweblogcategories(website) need parameter website to return the list, 
at some places I am unable to get the website.

I can do one thing, can I submit the patches for the work I have done 
till now, so you can take my changes and work on to it. Might be this 
will reduce your more than half of the work. What you say ?

Thanks
Gaurav

On Monday 27 January 2014 09:17 AM, Glen Mazza wrote:
> I'm looking at it now myself...ROL-1981 is a very messy task, sorry, I 
> suggested this item to you because the other ROL JIRA items you were 
> looking at the time appeared less important.
>
> Glen
>
> On 01/19/2014 11:01 AM, Gaurav wrote:
>> Hello Glen,
>>
>> I understood the way you suggested, as I just found that the feed 
>> category list was also not populating. The way you suggested is 
>> correct now as we did not have sub-categories now. Previoulsly we 
>> were using that method as we every time associate category with 
>> rootCategory, as we add each category below root (during add and edit 
>> category we pass id in bean for initializing the weblogCategory).
>> Also, I have corrected List to List<name> everywhere. I have now also 
>> installed tomcat in my eclipse and it helped a lot, thanks for this 
>> also. Just the test cases, I have to sought out what to do with them, 
>> might be changing this way might solve this issue also.
>> Last week was very busy for me have to work on weekends also, I will 
>> now complete this task in this week.
>>
>> Thanks for all the help and giving me this much time for working 
>> around this task.
>>
>> Gaurav
>>
>>
>> On Monday 13 January 2014 06:22 PM, Glen Mazza wrote:
>>> Hi Gaurav, just looked at the code.  I don't understand why there is 
>>> a getWeblogCategories() in WeblogEntryManager --- categories are 
>>> associated with a *Weblog* (the blog as a whole), not a 
>>> *WeblogEntry* (a blog entry).  A WeblogEntry should have a 
>>> getWeblogCategory() (singular) to identify the category the blog 
>>> entry was placed in, but I would think getWeblogEntries() should be 
>>> in the WeblogManager, and if temporarily necessary for the 
>>> WeblogEntryManager to have a getWeblogCategories(), have it call a 
>>> getWeblogManager().getWeblogCategories() to get that information.
>>>
>>> I don't know if the present implementation was an attempt to work 
>>> around any shortcomings in JPA.  Offhand, though, that last method 
>>> you listed, Weblog.getWeblogCategories() should be the most 
>>> important method to get working, (ideally), I would think the only 
>>> method that needs to have a getWeblogCategories() is 
>>> Weblog/WeblogManager.
>>>
>>> Note, best to use parameterized types in new code (i.e., List<Blah> 
>>> blah = new ArrayList<Blah>(); instead of just List blah) (see 
>>> Bloch's book, Effective Java) and those println's are indicating you 
>>> haven't gotten Tomcat webapp debugging set up in your IDE (what are 
>>> you using, IntelliJ or Eclipse?) -- I would really recommend doing 
>>> that, it's much faster to fix bugs when you can trace them. It's not 
>>> too difficult, there should be enough 'Net sources on how to do 
>>> that, but feel free to ask questions on that if necessary.
>>>
>>> Regards,
>>> Glen
>>>
>>>
>>> On 01/12/2014 06:19 AM, Gaurav wrote:
>>>> Hello Glen,
>>>>
>>>> Going through the test got another problem, as I told you I have 
>>>> created a method getWeblogCategories(), and I was able to get the 
>>>> categories listing on front-end (without changing anything in vm). 
>>>> But, now when I call this method again from WeblogCategory class in 
>>>> method hasCategory (for validating no duplicate category name), It 
>>>> did not return the categories.
>>>>
>>>> Below is new getWeblogCategories() method I created and another 
>>>> hasCategory method from where I call this.
>>>>
>>>> public List<WeblogCategory> getWeblogCategories(){
>>>>         List categories = new ArrayList();
>>>>         try {
>>>>             WeblogEntryManager wmgr = 
>>>> WebloggerFactory.getWeblogger().getWeblogEntryManager();
>>>> System.out.println("getweblogcategories==========="+getWebsite());
>>>>             categories = wmgr.getWeblogCategories(getWebsite());
>>>>         } catch (WebloggerException e) {
>>>>             log.error("ERROR: getting Categories", e);
>>>>         }
>>>>         return categories;
>>>>     }
>>>>
>>>> public boolean hasCategory(String name) {
>>>>         List<WeblogCategory> cats = getWeblogCategories();
>>>> System.out.println("========="+cats); // Return null
>>>>         for (WeblogCategory cat : cats) {
>>>> System.out.println("=====hascategory====="+name+"========"+cat.getName()); 
>>>>
>>>>             if(name.equals(cat.getName())) {
>>>>                 return true;
>>>>             }
>>>>         }
>>>>         return false;
>>>>     }
>>>>
>>>> Also, there is another method getWeblogCategories, in weblog.java 
>>>> this also return me null categories. Although same call in 
>>>> WeblogCategoryWrapper give results.
>>>> public List getWeblogCategories() {
>>>>         WeblogCategory website = new WeblogCategory();
>>>> System.out.println("=====getWeblogCategories====WEBLOG====website==="+website); 
>>>>
>>>>         return website.getWeblogCategories();
>>>>     }
>>>>
>>>> Thanks
>>>> Gaurav
>>>>
>>>> On Sunday 12 January 2014 04:05 PM, Glen Mazza wrote:
>>>>> Tests that are just testing that subcategories work can be 
>>>>> removed, because we don't have subcategories anymore--this change 
>>>>> is making the code simpler, and fewer tests are a consequence of 
>>>>> simpler code. Tests that are testing that category name changes 
>>>>> work, etc., should be rewritten to be able to iterate through a 
>>>>> weblog's category objects as if the categories are in List or Set 
>>>>> format, but no more hierarchical iteration as before.  Will that 
>>>>> work for you?
>>>>>
>>>>> Regards,
>>>>> Glen
>>>>>
>>>>> On 01/12/2014 03:21 AM, Gaurav wrote:
>>>>>> Hello Glen,
>>>>>>
>>>>>> I am still not able to correct the maven tests, if I run the 
>>>>>> tests they gave some errors, Actually as in many tests they are 
>>>>>> using root category for testing, I have also changed and 
>>>>>> commented some test cases still not successful in it.
>>>>>>
>>>>>> I am working and studying about the test cases (jUnit), what you 
>>>>>> suggest I should do to correct the test cases ?
>>>>>>
>>>>>> Thanks
>>>>>> Gaurav
>>>>>>
>>>>>> On Saturday 11 January 2014 05:01 PM, Glen Mazza wrote:
>>>>>>> Great! Looking forward to seeing the patch.
>>>>>>>
>>>>>>> Glen
>>>>>>>
>>>>>>> On 01/11/2014 03:18 AM, Gaurav wrote:
>>>>>>>> Hello Glen,
>>>>>>>>
>>>>>>>> I just got fixed that issue :). Thanks for all your help. I am 
>>>>>>>> done with all the issues and into thee final testing of the 
>>>>>>>> weblog all features.
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Gaurav
>>>>>>>>
>>>>>>>>
>>>>>>>> On Saturday 11 January 2014 12:20 PM, Gaurav wrote:
>>>>>>>>> Hello Glen,
>>>>>>>>>
>>>>>>>>> I still did not able to get what I should do next, as you told 
>>>>>>>>> that showWeblogCategoryLinksList($rootCategory false false) 
>>>>>>>>> only bring the toplevel categories, it because we specify the 
>>>>>>>>> $rootCategory each time, so automatically rootCategory child 
>>>>>>>>> will always going to be top level categories.
>>>>>>>>>
>>>>>>>>> Actually, my issue is that If I retain the method 
>>>>>>>>> getWeblogCategories() in WeblogCategory.java and return a Set 
>>>>>>>>> of type WeblogCategory then I have to do a mapping of that Set 
>>>>>>>>> in orm.xml like it was previously done
>>>>>>>>>
>>>>>>>>> <one-to-many name="weblogCategories" mapped-by="parent" 
>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.Weblog" 
>>>>>>>>> fetch="LAZY"> </one-to-many>)
>>>>>>>>>
>>>>>>>>> So, it was previouly mapped by parent, and as now we did not 
>>>>>>>>> have any parent, I tried with website but it gave me error as 
>>>>>>>>> might be because its target-entity is different. I am really 
>>>>>>>>> out of ideas.
>>>>>>>>>
>>>>>>>>> I was thinking of start submitting patches of my work till 
>>>>>>>>> now, as just this issue of showing categories at blog is left.
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> Gaurav
>>>>>>>>>
>>>>>>>>> On Wednesday 08 January 2014 08:42 AM, Glen Mazza wrote:
>>>>>>>>>> Hi Gaurav, weblog.weblogCategories should still exist as 
>>>>>>>>>> probably a Set of some sort (Set because of no duplicate 
>>>>>>>>>> Categories allowed), a List is another option.  A weblog does 
>>>>>>>>>> own a collection of categories even with the change. What 
>>>>>>>>>> should not exist is some child set of categories under each 
>>>>>>>>>> category--any code asking for the latter can be removed 
>>>>>>>>>> because there are never any subcategories under a category 
>>>>>>>>>> anymore.
>>>>>>>>>>
>>>>>>>>>> Might you be getting confused with this code?
>>>>>>>>>>     #set($categories = $weblog.weblogCategories )
>>>>>>>>>>     #foreach( $cat in $categories )
>>>>>>>>>>
>>>>>>>>>> The above should be fine, you're not for-eaching child 
>>>>>>>>>> categories under the *category* but under the *weblog*.
>>>>>>>>>>
>>>>>>>>>> Grepping the code for "#showWeblogCategoryLinksList", is 
>>>>>>>>>> showing that this is its most common usage:
>>>>>>>>>>
>>>>>>>>>> #showWeblogCategoryLinksList($rootCategory false false)
>>>>>>>>>>
>>>>>>>>>> I.e., just show the top-level categories with no 
>>>>>>>>>> subcategories. With the new code, all three params are 
>>>>>>>>>> useless now.
>>>>>>>>>>
>>>>>>>>>> I think what we need to do is create a new macro:
>>>>>>>>>>
>>>>>>>>>> #showWeblogCategoryLinksList
>>>>>>>>>> that does the same as
>>>>>>>>>> #showWeblogCategoryLinksList($rootCategory false false)
>>>>>>>>>>
>>>>>>>>>> And, for backward compatibility (at least so it compiles), 
>>>>>>>>>> have this macro:
>>>>>>>>>>
>>>>>>>>>> (A) #showWeblogCategoryLinksList($categoryObj $expanding 
>>>>>>>>>> $subcats)
>>>>>>>>>> ignore all three of its arguments and just call
>>>>>>>>>> (B) #showWeblogCategoryLinksList
>>>>>>>>>>
>>>>>>>>>> So (A) will be a deprecated method to be pulled out at a 
>>>>>>>>>> future time (maybe in 5.1) -- we'll have to update each of 
>>>>>>>>>> our templates that currently call (A) to have them call (B) 
>>>>>>>>>> instead -- a simple change to make.
>>>>>>>>>>
>>>>>>>>>> I'm not sure if I'm answering your questions but I think this 
>>>>>>>>>> might be what you're getting at.
>>>>>>>>>>
>>>>>>>>>> Regards,
>>>>>>>>>> Glen
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 01/07/2014 04:35 PM, Gaurav wrote:
>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>
>>>>>>>>>>> I am completed with the Database, JPA, UI Layer. I have 
>>>>>>>>>>> tested all possible ways by creating, deleting, updating 
>>>>>>>>>>> entries, categories and also the complete weblog.
>>>>>>>>>>> The only single issue left is in Template Layer. Actually in 
>>>>>>>>>>> weblog.vm file for iterating categories list for menu and 
>>>>>>>>>>> feeds, it uses ($weblog.weblogCategories). It try getting 
>>>>>>>>>>> list from WeblogCategory method getWeblogCategories() and 
>>>>>>>>>>> wrapping up with WeblogCategoryWrapper and WeblogWrapper 
>>>>>>>>>>> classes. But as this method is no longer required, as it was 
>>>>>>>>>>> for maintaining relations of parent-child, It did not get 
>>>>>>>>>>> any list.
>>>>>>>>>>>
>>>>>>>>>>> I though of retaining getWeblogCategories() method in 
>>>>>>>>>>> WeblogCategory class, and getting list of categories 
>>>>>>>>>>> directly from JPAWeblogEntryManager but it seems wrong to me 
>>>>>>>>>>> according to the structure. Can you please guide me what 
>>>>>>>>>>> should be the best way to go ?
>>>>>>>>>>>
>>>>>>>>>>> Thanks
>>>>>>>>>>> Gaurav
>>>>>>>>>>>
>>>>>>>>>>> On Wednesday 08 January 2014 01:25 AM, Gaurav wrote:
>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>
>>>>>>>>>>>> I figured out that issues, as I told when I use 
>>>>>>>>>>>> getWeblogCategories() method, then the error comes, 
>>>>>>>>>>>> actually its due to  the reason that I have removed below 
>>>>>>>>>>>> one-to-many mapping in orm file and still using the method. 
>>>>>>>>>>>> As you said, I studied JPA and get some time into it and 
>>>>>>>>>>>> learned new things about the mapping relationship. Now, I 
>>>>>>>>>>>> am thinking of implementing the same way as 
>>>>>>>>>>>> getWeblogEntries are listed  as it also come respect to the 
>>>>>>>>>>>> weblog/website.
>>>>>>>>>>>>
>>>>>>>>>>>> <one-to-many name="weblogCategories" mapped-by="parent" 
>>>>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.WeblogCategory" 
>>>>>>>>>>>> fetch="LAZY"></one-to-many>
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks
>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>
>>>>>>>>>>>> On Monday 06 January 2014 02:36 AM, Glen Mazza wrote:
>>>>>>>>>>>>> I don't know, but I don't like that statement 
>>>>>>>>>>>>> "c.getWeblogCategories().add(c); "  A WeblogCategory 
>>>>>>>>>>>>> should no longer have child weblog categories (they are 
>>>>>>>>>>>>> pure siblings of each other with no hierarchical 
>>>>>>>>>>>>> relationship), so such an "add" shouldn't exist.  You can 
>>>>>>>>>>>>> have -->Weblog<---.getWeblogCategories().add(c), that 
>>>>>>>>>>>>> would make sense.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>
>>>>>>>>>>>>> On 01/05/2014 03:32 PM, Gaurav wrote:
>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I tried finding the that issues, but did not find 
>>>>>>>>>>>>>> anywhere. Also it is created dynamically as I changed the 
>>>>>>>>>>>>>> entity name to category1 then also sameerror come up with 
>>>>>>>>>>>>>> "category1_category1" doesn't exist. I think this might 
>>>>>>>>>>>>>> be something I am doing wrong with the code. As, Today I 
>>>>>>>>>>>>>> cleaned up all the code and now everything is working 
>>>>>>>>>>>>>> good. I am successful in creating, editing and deleting 
>>>>>>>>>>>>>> the weblog, entries, categories and everything is showing 
>>>>>>>>>>>>>> good.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Just single problem I am having now is showing the 
>>>>>>>>>>>>>> categories list in feeds and in menu. I figured out after 
>>>>>>>>>>>>>> checking that $categoryObject.getWeblogCategories() is 
>>>>>>>>>>>>>> iterated in velocity file which check for the 
>>>>>>>>>>>>>> getWeblogCategories() method of type Set in 
>>>>>>>>>>>>>> WeblogCategory class, Initially I commented this method 
>>>>>>>>>>>>>> as the comments over this method said "Get child 
>>>>>>>>>>>>>> categories of this category". But I think this is 
>>>>>>>>>>>>>> neccasary as whenever a category is created this is 
>>>>>>>>>>>>>> called to add a category to Set 
>>>>>>>>>>>>>> "rootCat.getWeblogCategories().add(c);"
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Now, Problem is we did not have any parent or root 
>>>>>>>>>>>>>> category now, so how it will going to add to that Set and 
>>>>>>>>>>>>>> Also I tried creating a object of WeblogCategory Class 
>>>>>>>>>>>>>> and tried adding it to getWeblogCategories() method then 
>>>>>>>>>>>>>> again. Now When I tired adding category with this 
>>>>>>>>>>>>>> "c.getWeblogCategories().add(c);" the same error comes 
>>>>>>>>>>>>>> up. If I comment this line that add category, everything 
>>>>>>>>>>>>>> works fine again, just did not get any list of categories 
>>>>>>>>>>>>>> in menu and feed.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Also, I am confused what setWeblogCategories() is doing 
>>>>>>>>>>>>>> as I did not find anywhere where it is used for setting 
>>>>>>>>>>>>>> categories. Just the getWeblogCategories() is used with 
>>>>>>>>>>>>>> .add for adding child categories to parent/root.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Below is what I done in addWeblogContents method of class 
>>>>>>>>>>>>>> JPAWeblogManagerImpl.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> if (cats != null && cats.trim().length() > 0) {
>>>>>>>>>>>>>>             String[] splitcats = cats.split(",");
>>>>>>>>>>>>>>             for (int i=0; i<splitcats.length; i++) {
>>>>>>>>>>>>>>                 WeblogCategory c = new WeblogCategory(
>>>>>>>>>>>>>>                         newWeblog, // newWeblog
>>>>>>>>>>>>>>                         splitcats[i], // name
>>>>>>>>>>>>>>                         splitcats[i], // description
>>>>>>>>>>>>>>                         null ); // image
>>>>>>>>>>>>>>                 if (i == 0) {
>>>>>>>>>>>>>>                     firstCat = c;
>>>>>>>>>>>>>>                 }
>>>>>>>>>>>>>> System.out.println("====Cats==="+c);
>>>>>>>>>>>>>> c.getWeblogCategories().add(c); //previously it was 
>>>>>>>>>>>>>> root.getWeblogCategories.add(c);
>>>>>>>>>>>>>>                 this.strategy.store(c);
>>>>>>>>>>>>>>             }
>>>>>>>>>>>>>>         }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> [EL Warning]: 2014-01-05 
>>>>>>>>>>>>>> 17:15:22.179--ClientSession(1956103136)--Exception 
>>>>>>>>>>>>>> [EclipseLink-4002] (Eclipse Persistence Services - 
>>>>>>>>>>>>>> 2.5.0.v20130507-3faac2b): 
>>>>>>>>>>>>>> org.eclipse.persistence.exceptions.DatabaseException
>>>>>>>>>>>>>> Internal Exception: java.sql.SQLSyntaxErrorException: 
>>>>>>>>>>>>>> Table/View 'CATEGORY_CATEGORY' does not exist.
>>>>>>>>>>>>>> Error Code: 20000
>>>>>>>>>>>>>> Call: INSERT INTO category_category (weblogCategories_id, 
>>>>>>>>>>>>>> WeblogCategory_id) VALUES (?, ?)
>>>>>>>>>>>>>>     bind => [2 parameters bound]
>>>>>>>>>>>>>> Query: DataModifyQuery(name="weblogCategories" 
>>>>>>>>>>>>>> sql="INSERT INTO category_category (weblogCategories_id, 
>>>>>>>>>>>>>> WeblogCategory_id) VALUES (?, ?)")
>>>>>>>>>>>>>> *
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Also I tried making new ArrayList and new getter setter 
>>>>>>>>>>>>>> in WeblogCategory class, still I got same error.
>>>>>>>>>>>>>>     List<WeblogCategory> catsss = new 
>>>>>>>>>>>>>> ArrayList<WeblogCategory>();
>>>>>>>>>>>>>>     catsss.add(c);
>>>>>>>>>>>>>>     c.setList(catsss);
>>>>>>>>>>>>>> System.out.println("======"+catsss+"============"+c.getList()); 
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Got this error, after adding Arraylist.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> [EL Warning]: 2014-01-05 
>>>>>>>>>>>>>> 19:42:56.209--ClientSession(1732472947)--Exception 
>>>>>>>>>>>>>> [EclipseLink-4002] (Eclipse Persistence Services - 
>>>>>>>>>>>>>> 2.5.0.v20130507-3faac2b): 
>>>>>>>>>>>>>> org.eclipse.persistence.exceptions.DatabaseException
>>>>>>>>>>>>>> Internal Exception: java.sql.SQLSyntaxErrorException: 
>>>>>>>>>>>>>> Table/View 'CATEGORY_CATEGORY' does not exist.
>>>>>>>>>>>>>> Error Code: 20000
>>>>>>>>>>>>>> Call: INSERT INTO category_category (list_id, 
>>>>>>>>>>>>>> WeblogCategory_id) VALUES (?, ?)
>>>>>>>>>>>>>>     bind => [2 parameters bound]
>>>>>>>>>>>>>> Query: DataModifyQuery(name="list" sql="INSERT INTO 
>>>>>>>>>>>>>> category_category (list_id, WeblogCategory_id) VALUES (?, 
>>>>>>>>>>>>>> ?)")
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Sunday 05 January 2014 05:30 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>> Hi Gaurav, did you try a "control" with your file search 
>>>>>>>>>>>>>>> method? I.e., you're saying you're case-insensitive 
>>>>>>>>>>>>>>> searching on "category_category" but nothing is getting 
>>>>>>>>>>>>>>> returned -- did you try also searching something that 
>>>>>>>>>>>>>>> you *know* exists in the project (say, "class", 
>>>>>>>>>>>>>>> "public", "return", etc.) and your IDE/search method 
>>>>>>>>>>>>>>> indeed did return lots of matches?  Because if you get 
>>>>>>>>>>>>>>> zero search results with the latter we know the problem 
>>>>>>>>>>>>>>> is with the way you're configuring your search, not the 
>>>>>>>>>>>>>>> non-existence of "category_category". (Also are you 
>>>>>>>>>>>>>>> searching on every type of file extension, not just 
>>>>>>>>>>>>>>> .java files?)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Somewhere in your code the JPA layer has decided to 
>>>>>>>>>>>>>>> calculate "category_category" as a table name, I would 
>>>>>>>>>>>>>>> guess because that's what is exactly in the code 
>>>>>>>>>>>>>>> someplace (as you can see the query below generated 
>>>>>>>>>>>>>>> "...FROM category_category t0, category t1..."). One 
>>>>>>>>>>>>>>> useful experiment might be to rename the "category" 
>>>>>>>>>>>>>>> table (t1) above to "category2" -- would the SQL above 
>>>>>>>>>>>>>>> change to "category2_category2, category2..." or (I 
>>>>>>>>>>>>>>> think) "...FROM category_category t0, category2 t1...") 
>>>>>>>>>>>>>>> If the former, that would indicate that 
>>>>>>>>>>>>>>> "category2_category2" is being dynamically generated 
>>>>>>>>>>>>>>> from the "category2" table name. If the latter, that 
>>>>>>>>>>>>>>> would mean "category_category" is hardcoded somewhere 
>>>>>>>>>>>>>>> and not related to the "category" table name you've 
>>>>>>>>>>>>>>> properly configured.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I probably won't be able to get to this until next 
>>>>>>>>>>>>>>> weekend anyway, so I'm going to have you finish it, also 
>>>>>>>>>>>>>>> as a confidence-builder for you (if you let JPA push you 
>>>>>>>>>>>>>>> around now, it's always going to bully you...  :)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> PS:  Just to clarify, when an pre-5.1-SNAPSHOT user 
>>>>>>>>>>>>>>> installs Roller 5.1-SNAPSHOT, the Roller startup should 
>>>>>>>>>>>>>>> automatically detect that the system is currently using 
>>>>>>>>>>>>>>> an older Roller database and do the database upgrade 
>>>>>>>>>>>>>>> (creating of new the "category" table and prepopulation 
>>>>>>>>>>>>>>> of it). Roller has always done this as so long as you 
>>>>>>>>>>>>>>> put the necessary migration scripts in the right place 
>>>>>>>>>>>>>>> there should be no problem. However, those of us already 
>>>>>>>>>>>>>>> on 5.1-SNAPSHOT like myself before your patch will need 
>>>>>>>>>>>>>>> to manually create that table in our database (the 
>>>>>>>>>>>>>>> Roller script won't notice 5.1-SNAPSHOT-->5.1-SNAPSHOT, 
>>>>>>>>>>>>>>> so won't create "category" by itself.)  No problem, 
>>>>>>>>>>>>>>> we'll just figure out the necessary SQL statements for 
>>>>>>>>>>>>>>> Dave and he can add it to his Roller project blog.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On 01/04/2014 04:47 PM, Gaurav wrote:
>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I searched whole project and did not find anywhere. I 
>>>>>>>>>>>>>>>> think might be I have done something wrong, as when I 
>>>>>>>>>>>>>>>> start with new database, everything work just deleting 
>>>>>>>>>>>>>>>> gives me this error. If I work on old database it even 
>>>>>>>>>>>>>>>> did not start up (localhost:8080/roller) gives my below 
>>>>>>>>>>>>>>>> error.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I have checked almost everything I can, might be some 
>>>>>>>>>>>>>>>> wrong java code and anything I done wrong that causes 
>>>>>>>>>>>>>>>> this. Should I submit by work so you can look on to it, 
>>>>>>>>>>>>>>>> or if we are not in any hurry than I can look into it 
>>>>>>>>>>>>>>>> again step by step (I prefer second option if we have 
>>>>>>>>>>>>>>>> one more week. Just another week or so, next week i 
>>>>>>>>>>>>>>>> have some tight schedule). I know I am taking too much 
>>>>>>>>>>>>>>>> time, but I am new to this level of Java code, as I 
>>>>>>>>>>>>>>>> worked maximum time at client side. But I really loving 
>>>>>>>>>>>>>>>> java code and learned a lot till now, before this I 
>>>>>>>>>>>>>>>> just worked with Java on small projects. OpenSource 
>>>>>>>>>>>>>>>> Projects really are very powerful and good way to learn 
>>>>>>>>>>>>>>>> new things.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Exception [EclipseLink-4002] (Eclipse Persistence 
>>>>>>>>>>>>>>>> Services - 2.5.0.v20130507-3faac2b): 
>>>>>>>>>>>>>>>> org.eclipse.persistence.exceptions.DatabaseException 
>>>>>>>>>>>>>>>> Internal Exception: 
>>>>>>>>>>>>>>>> com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: 
>>>>>>>>>>>>>>>> Table 'roller.category_category' doesn't exist Error 
>>>>>>>>>>>>>>>> Code: 1146 Call: SELECT t1.id, t1.description, 
>>>>>>>>>>>>>>>> t1.image, t1.name, t1.websiteid FROM category_category 
>>>>>>>>>>>>>>>> t0, category t1 WHERE ((t0.WeblogCategory_id = ?) AND 
>>>>>>>>>>>>>>>> (t1.id = t0.weblogCategories_id)) bind => [1 parameter 
>>>>>>>>>>>>>>>> bound] Query: ReadAllQuery(name="weblogCategories" 
>>>>>>>>>>>>>>>> referenceClass=WeblogCategory sql="SELECT t1.id, 
>>>>>>>>>>>>>>>> t1.description, t1.image, t1.name, t1.websiteid FROM 
>>>>>>>>>>>>>>>> category_category t0, category t1 WHERE 
>>>>>>>>>>>>>>>> ((t0.WeblogCategory_id = ?) AND (t1.id = 
>>>>>>>>>>>>>>>> t0.weblogCategories_id))")
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Sunday 05 January 2014 12:00 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>> Hi Gaurav, no, that relation shouldn't be needed anymore.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> As for the table name, at the top of your orm.xml file 
>>>>>>>>>>>>>>>>> the table name the file maps against is declared -- 
>>>>>>>>>>>>>>>>> perhaps you accidentally called it category_category. 
>>>>>>>>>>>>>>>>> I would grep or use a file search from your IDE of 
>>>>>>>>>>>>>>>>> your entire roller source code, looking for where 
>>>>>>>>>>>>>>>>> category_category is being declared -- (probably) has 
>>>>>>>>>>>>>>>>> to be there someplace. (More specifically, do a file 
>>>>>>>>>>>>>>>>> search on "DataModifyQuery" -- that's probably exactly 
>>>>>>>>>>>>>>>>> where the problem is.)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Once working, try to import the latest code changes 
>>>>>>>>>>>>>>>>> into your code before submitting a patch (actually 
>>>>>>>>>>>>>>>>> create a backup patch first just in case).  Not sure 
>>>>>>>>>>>>>>>>> but I think a simple svn update will do -- svn will 
>>>>>>>>>>>>>>>>> identify some files where it will need your assistance 
>>>>>>>>>>>>>>>>> to resolve any differences -- it shouldn't be too hard 
>>>>>>>>>>>>>>>>> or time-consuming to do.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On 01/04/2014 08:55 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> I just want to know that the below relations in 
>>>>>>>>>>>>>>>>>> WeblogCategory.orm.xml are required or not as now the 
>>>>>>>>>>>>>>>>>> parent is not used so, I don't think its needed now. 
>>>>>>>>>>>>>>>>>> I have commented the below lines.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> <many-to-one name="parent" 
>>>>>>>>>>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.Category"> 
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>                 <join-column name="parentid" 
>>>>>>>>>>>>>>>>>> insertable="true" updatable="true" nullable="true"/>
>>>>>>>>>>>>>>>>>>             </many-to-one>
>>>>>>>>>>>>>>>>>>             <one-to-many name="weblogCategories" 
>>>>>>>>>>>>>>>>>> mapped-by="parent" 
>>>>>>>>>>>>>>>>>> target-entity="org.apache.roller.weblogger.pojos.Category" 
>>>>>>>>>>>>>>>>>> fetch="LAZY">
>>>>>>>>>>>>>>>>>>                 <cascade>
>>>>>>>>>>>>>>>>>> <cascade-remove/>
>>>>>>>>>>>>>>>>>>                 </cascade>
>>>>>>>>>>>>>>>>>>             </one-to-many>
>>>>>>>>>>>>>>>>>>             <transient name="inUse"/>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> I asked this because, getting categories giving me 
>>>>>>>>>>>>>>>>>> mysql exception. The new table is 'roller.category' 
>>>>>>>>>>>>>>>>>> but it executes for 'roller.category_category'.
>>>>>>>>>>>>>>>>>> I am not able to get what I have done wrong.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Internal Exception: 
>>>>>>>>>>>>>>>>>> com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: 
>>>>>>>>>>>>>>>>>> Table 'roller.category_category' doesn't exist
>>>>>>>>>>>>>>>>>> Error Code: 1146
>>>>>>>>>>>>>>>>>> Call: DELETE FROM category_category WHERE 
>>>>>>>>>>>>>>>>>> (WeblogCategory_id = ?)
>>>>>>>>>>>>>>>>>>     bind => [1 parameter bound]
>>>>>>>>>>>>>>>>>> Query: DataModifyQuery(name="weblogCategories" 
>>>>>>>>>>>>>>>>>> sql="DELETE FROM category_category WHERE 
>>>>>>>>>>>>>>>>>> (WeblogCategory_id = ?)")
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Also, I have changed the getWeblogCategoryByPath to 
>>>>>>>>>>>>>>>>>> getWeblogCategoryByName so feeds and other places 
>>>>>>>>>>>>>>>>>> work fine. I have able to get catgeory list, new 
>>>>>>>>>>>>>>>>>> entries are creating successfully. Just deleting the 
>>>>>>>>>>>>>>>>>> weblog is giving me above error.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On Saturday 04 January 2014 12:53 PM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> I have already deleted getPath and getParent and in 
>>>>>>>>>>>>>>>>>>> the mid of everything. I hope I will be able to 
>>>>>>>>>>>>>>>>>>> complete this by Monday. If still, I get some major 
>>>>>>>>>>>>>>>>>>> issues due to this, I will switch to what you 
>>>>>>>>>>>>>>>>>>> suggested. Just give me time till Monday, as I have 
>>>>>>>>>>>>>>>>>>> done almost 80% of code cleaned regarding the path 
>>>>>>>>>>>>>>>>>>> and parentcategory. I will get back to you soon with 
>>>>>>>>>>>>>>>>>>> some patches and then you can test it.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Also, my ICLA have been filed, got the receipt of my 
>>>>>>>>>>>>>>>>>>> ICLA.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> On Wednesday 01 January 2014 08:07 AM, Glen Mazza 
>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>> Gaurav, sorry, it just occurred to me there's a 
>>>>>>>>>>>>>>>>>>>> simpler intermediate step that can be done. While 
>>>>>>>>>>>>>>>>>>>> we need the database table without a path column, 
>>>>>>>>>>>>>>>>>>>> and to remove the "path" member *variable* from 
>>>>>>>>>>>>>>>>>>>> WeblogCategory (or its replacement), we can still 
>>>>>>>>>>>>>>>>>>>> keep indefinitely keep getPath(), just hardcode it 
>>>>>>>>>>>>>>>>>>>> to "/" + categoryName, which is precisely what the 
>>>>>>>>>>>>>>>>>>>> old code returns for any top-level category--the 
>>>>>>>>>>>>>>>>>>>> rest of the system can stay just as it did before. 
>>>>>>>>>>>>>>>>>>>> Switching the rest of the code from getPath() to 
>>>>>>>>>>>>>>>>>>>> using getName() can be done at any time, bit by bit 
>>>>>>>>>>>>>>>>>>>> whenever, that's not necessary to implement 
>>>>>>>>>>>>>>>>>>>> positioning, that's just a code cleanup issue. 
>>>>>>>>>>>>>>>>>>>> Likewise, for WeblogCategory.getParent(), it may be 
>>>>>>>>>>>>>>>>>>>> as simple as adding a root category object as part 
>>>>>>>>>>>>>>>>>>>> of the Weblog's constructor (but not saved to the 
>>>>>>>>>>>>>>>>>>>> database), and having WeblogCategory.getParent() 
>>>>>>>>>>>>>>>>>>>> just return website.getParentCategory()--that way 
>>>>>>>>>>>>>>>>>>>> all categories for a weblog will have the same root 
>>>>>>>>>>>>>>>>>>>> category as before, and the rest of the code base 
>>>>>>>>>>>>>>>>>>>> should function fine. Once we're on the new table, 
>>>>>>>>>>>>>>>>>>>> then it's an issue of implementing 
>>>>>>>>>>>>>>>>>>>> positioning--getting rid of getParent() and 
>>>>>>>>>>>>>>>>>>>> getPath() can be done by anybody at a later date.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> On 12/31/2013 08:09 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>> No problem, I'm available to help (or finish it 
>>>>>>>>>>>>>>>>>>>>> up) if needed. For a seemingly simple switch, 
>>>>>>>>>>>>>>>>>>>>> you're certainly getting a *full* education of the 
>>>>>>>>>>>>>>>>>>>>> Roller codebase.  :)
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> BTW, I hope you're not testing via mvn jetty:run, 
>>>>>>>>>>>>>>>>>>>>> as that requires you to keep logging in for the 
>>>>>>>>>>>>>>>>>>>>> first time, creating a blog for the first time, 
>>>>>>>>>>>>>>>>>>>>> etc., whenever you start it. Very inefficient and 
>>>>>>>>>>>>>>>>>>>>> tiring. Normally I just build (mvn clean install) 
>>>>>>>>>>>>>>>>>>>>> and dump the WAR into standalone Tomcat on my 
>>>>>>>>>>>>>>>>>>>>> local machine. The database & other configuration 
>>>>>>>>>>>>>>>>>>>>> I keep permanently in roller-custom.properties in 
>>>>>>>>>>>>>>>>>>>>> the Tomcat lib/ folder, so the new WAR just takes 
>>>>>>>>>>>>>>>>>>>>> over with the same configuration, blogs, accounts, 
>>>>>>>>>>>>>>>>>>>>> etc., that old WAR was using. (Check the Roller 
>>>>>>>>>>>>>>>>>>>>> install guide for full instructions.)
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Also vital is that you know how to debug/trace 
>>>>>>>>>>>>>>>>>>>>> Roller code in Eclipse or IntelliJ while it is 
>>>>>>>>>>>>>>>>>>>>> running on Tomcat (or another servlet container). 
>>>>>>>>>>>>>>>>>>>>> It's much simpler than it seems, and will save you 
>>>>>>>>>>>>>>>>>>>>> a lot of time. These instructions are for Eclipse 
>>>>>>>>>>>>>>>>>>>>> but Intellij (my preference) is basically the 
>>>>>>>>>>>>>>>>>>>>> same: 
>>>>>>>>>>>>>>>>>>>>> http://www.jroller.com/gmazza/entry/eclipse_debug_web_services#ec3. 
>>>>>>>>>>>>>>>>>>>>> Checking variable values while it's running will 
>>>>>>>>>>>>>>>>>>>>> point you to where problems are much more quickly.
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Happy New Year!
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> On 12/31/2013 06:39 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> As, I previously told you that the test cases are 
>>>>>>>>>>>>>>>>>>>>>> giving problem, actually I think we have to do 
>>>>>>>>>>>>>>>>>>>>>> some changes in Test Cases also, as many of the 
>>>>>>>>>>>>>>>>>>>>>> methods involving path and parent are removed so, 
>>>>>>>>>>>>>>>>>>>>>> many times in test cases (it did not get correct 
>>>>>>>>>>>>>>>>>>>>>> values and give errors).
>>>>>>>>>>>>>>>>>>>>>> I have successfully showed the categories by 
>>>>>>>>>>>>>>>>>>>>>> website till now in the admin section. Also, the 
>>>>>>>>>>>>>>>>>>>>>> entries are saved just, I ran out of memory issue 
>>>>>>>>>>>>>>>>>>>>>> in happen when I save an entry that entry, 
>>>>>>>>>>>>>>>>>>>>>> although it get saved when I refresh the page.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Also, as their is not path now, we have to do 
>>>>>>>>>>>>>>>>>>>>>> some changes in velocity files, as feeds are 
>>>>>>>>>>>>>>>>>>>>>> giving error in showing, although if I direct 
>>>>>>>>>>>>>>>>>>>>>> enter the URL its working fine. I have cleared 
>>>>>>>>>>>>>>>>>>>>>> many parts of the code, just I have test of the 
>>>>>>>>>>>>>>>>>>>>>> roller parts which are linked the path and 
>>>>>>>>>>>>>>>>>>>>>> parent. I am thinking of correcting the test 
>>>>>>>>>>>>>>>>>>>>>> cases, as I can run them and if test cases are 
>>>>>>>>>>>>>>>>>>>>>> fine then might be everything will work fine.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> I will return to work on this after 3 days, as I 
>>>>>>>>>>>>>>>>>>>>>> will be and will get be to it during coming 
>>>>>>>>>>>>>>>>>>>>>> weekend again. I will wrap this out asap for you 
>>>>>>>>>>>>>>>>>>>>>> to test and will attach patches coming weekend.
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 05:49 PM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>> Thanks for that info, I have changed my settings 
>>>>>>>>>>>>>>>>>>>>>>> in the eclipse.
>>>>>>>>>>>>>>>>>>>>>>> Yes, you are right I will leave the ordering 
>>>>>>>>>>>>>>>>>>>>>>> part for now and work on clearing the code for 
>>>>>>>>>>>>>>>>>>>>>>> now. For now I will just add a column in 
>>>>>>>>>>>>>>>>>>>>>>> category table with position, leaving it null 
>>>>>>>>>>>>>>>>>>>>>>> for now.
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 05:33 PM, Glen 
>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>> Your last ImprovedCreateUser.patch had some tab 
>>>>>>>>>>>>>>>>>>>>>>>> characters in it, and our project uses spaces 
>>>>>>>>>>>>>>>>>>>>>>>> for tabs (just have Eclipse insert 4 spaces 
>>>>>>>>>>>>>>>>>>>>>>>> whenever you hit the tab key, with no tab 
>>>>>>>>>>>>>>>>>>>>>>>> characters.) Very few Apache projects (any?) 
>>>>>>>>>>>>>>>>>>>>>>>> are tab-indented today. It is a simple fix with 
>>>>>>>>>>>>>>>>>>>>>>>> IntelliJ IDEA (Edit -> Convert Indents -> To 
>>>>>>>>>>>>>>>>>>>>>>>> Spaces), I'm sure Eclipse has an equivalent.
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> For blogs migrating from pre-5.1 versions, we 
>>>>>>>>>>>>>>>>>>>>>>>> can keep the position NULL by default (and when 
>>>>>>>>>>>>>>>>>>>>>>>> you order by position, with null values, they 
>>>>>>>>>>>>>>>>>>>>>>>> will come out in any order, like they do 
>>>>>>>>>>>>>>>>>>>>>>>> today.) Whenever a new blog is created with the 
>>>>>>>>>>>>>>>>>>>>>>>> default three categories, those can be assigned 
>>>>>>>>>>>>>>>>>>>>>>>> positions (probably 0-based for leftmost is 
>>>>>>>>>>>>>>>>>>>>>>>> best.) For migrated blogs, once the user goes 
>>>>>>>>>>>>>>>>>>>>>>>> to the category page and makes a change for the 
>>>>>>>>>>>>>>>>>>>>>>>> first time, numbers can be written for the very 
>>>>>>>>>>>>>>>>>>>>>>>> first time--no special extra UI is needed for 
>>>>>>>>>>>>>>>>>>>>>>>> this purpose. But like I was saying, this is 
>>>>>>>>>>>>>>>>>>>>>>>> such a lengthy patch you may wish to forget 
>>>>>>>>>>>>>>>>>>>>>>>> about the ordering right now--it doesn't work 
>>>>>>>>>>>>>>>>>>>>>>>> anyway in Roller right now. It may be best to 
>>>>>>>>>>>>>>>>>>>>>>>> get us to the new table and get rid of the 
>>>>>>>>>>>>>>>>>>>>>>>> paths, and once we're on that firmer foundation 
>>>>>>>>>>>>>>>>>>>>>>>> implementing positioning (on the Category page 
>>>>>>>>>>>>>>>>>>>>>>>> and in the templates) will be much simpler.
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>> On 12/28/2013 06:14 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>> I will change the position to be integer, and 
>>>>>>>>>>>>>>>>>>>>>>>>> will exclude the category where parent null, 
>>>>>>>>>>>>>>>>>>>>>>>>> but still what can be done for the position as 
>>>>>>>>>>>>>>>>>>>>>>>>> the old data did not have position, so how and 
>>>>>>>>>>>>>>>>>>>>>>>>> on what basis we have to add position to it. I 
>>>>>>>>>>>>>>>>>>>>>>>>> was thinking that we can left it as null, and 
>>>>>>>>>>>>>>>>>>>>>>>>> provide some UI in backend where user can 
>>>>>>>>>>>>>>>>>>>>>>>>> assign position themselves.
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>> I will take care of spacing, will search what 
>>>>>>>>>>>>>>>>>>>>>>>>> I am doing wrong. As, I am not sure is that 
>>>>>>>>>>>>>>>>>>>>>>>>> you are talking about formatting the code, or 
>>>>>>>>>>>>>>>>>>>>>>>>> anything else. As I use tab (with 4 spaces) in 
>>>>>>>>>>>>>>>>>>>>>>>>> Eclipse IDE.
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 04:27 PM, Glen 
>>>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>> BTW, not to be hated, but make sure any code 
>>>>>>>>>>>>>>>>>>>>>>>>>> you submit is space-padded (4 spaces), *not* 
>>>>>>>>>>>>>>>>>>>>>>>>>> tab-padded. Your IDE should be able to 
>>>>>>>>>>>>>>>>>>>>>>>>>> convert it for you if you've been doing 
>>>>>>>>>>>>>>>>>>>>>>>>>> tab-padding.
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/28/2013 05:06 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> I am confused on how to add and on what 
>>>>>>>>>>>>>>>>>>>>>>>>>>> basis we have to addd position to the new 
>>>>>>>>>>>>>>>>>>>>>>>>>>> category table. Below two sql commands can 
>>>>>>>>>>>>>>>>>>>>>>>>>>> be used for coping data and deleting the 
>>>>>>>>>>>>>>>>>>>>>>>>>>> root categories.
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> create table category (
>>>>>>>>>>>>>>>>>>>>>>>>>>>     id varchar(48) not null primary key,
>>>>>>>>>>>>>>>>>>>>>>>>>>>     name varchar(255) not null,
>>>>>>>>>>>>>>>>>>>>>>>>>>> description varchar(255),
>>>>>>>>>>>>>>>>>>>>>>>>>>>     websiteid varchar(48) not null,
>>>>>>>>>>>>>>>>>>>>>>>>>>>     image varchar(255),
>>>>>>>>>>>>>>>>>>>>>>>>>>>     position varchar(48)
>>>>>>>>>>>>>>>>>>>>>>>>>>> );
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> insert into 
>>>>>>>>>>>>>>>>>>>>>>>>>>> category(id,name,description,websiteid,image) select 
>>>>>>>>>>>>>>>>>>>>>>>>>>> id,name,description,websiteid,image from 
>>>>>>>>>>>>>>>>>>>>>>>>>>> weblogcategory;
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> delete from category where name="root";
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> What do you suggest for this ?
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 28 December 2013 06:56 AM, Glen 
>>>>>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Take your time, this is a messy change as 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> it affects many areas of the code. But 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller will be architecturally much more 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> solid and simpler once this change is 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> done.  I have your ROL-1616 and ROL-1982 on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>> my plate for this weekend.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/27/2013 02:40 PM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have deleted the path and all related 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods, but its seems to me that the path 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods like (getWeblogCategoryByPath) and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> many other path and parent related 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods, are scattered over the whole 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> roller. There are many occurrence of these 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> methods and I have to sort out each piece 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> of code as now there is no path so, mostly 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> we check for categoryPath != null in if 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> conditions, so these are no longer needed.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Also, I as thinking after testing and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> completing this we can delete the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> WeblogCategory and replace with Category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> method, as it will be clean. I also 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> figured out why my tests are failing as 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> during creating of weblogentry it did not 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> find the categories, as that class was 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> using old WeblogCategory table and using 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that class methods. I think I will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> definitely will figure out everything at 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the end and will successfully test with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the unit tests.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am now in the editor part so can display 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the categories on front end, I am now all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> over the 1-2-3-4 steps you mentioned. As 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> soon as I will able to display the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories (small issues left) at the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> backend, I will again go through my 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> changes. Also, at this time I can only 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> create patch for new table and migration 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> script, as all other classes code are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> interrelated so can't submit now. I will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> test every single thing related to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories, then I will submit my patches.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Although I have learned a lot new things, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> just spent last two full days on this 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sorting out things, many times ending up 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> nowhere from where I started. But I am 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> confident that I will definitely complete 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> this task. Just I am worrying that I must 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> be taking too much time.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> If there is something, you can advice me I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> would happy to follow that also.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Friday 27 December 2013 05:09 AM, Glen 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> If it helps, you can provide interim 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> patches, so long as it doesn't break the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> current code base. You may want to create 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> a patch just creating the new database 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> table (which will be ignored by the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> current code) and sql insert-select 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> scripts to move from the current table to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the new one, then one converting the code 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to using the new table without sorting, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> then (finally) one that implements 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sorting of the categories.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/26/2013 08:12 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have created and updated all necessary 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> files in JPA and for database, I tried 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> compiling the code it gave me errors in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> test cases. As I am not sure that what I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> am wrong in this. Although I tried 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> compiling without running test cases, it 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> worked fine. I tested it with tomcat and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new table category is created and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> initial category (General, Finance and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Technology) are created with the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> position 1,2,3. Still there are many 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> thing I have to clean up and sort out 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and will test it again.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thursday 26 December 2013 03:31 PM, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Ok, got your point. I will check on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> other Roller parts also if parent name 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and path aren't be using in any other 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> part of Roller. I will go into the RSS 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and Atom feeds later on, and see what 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> changes it need. As, till now I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> changed many files and created some, so 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will first test this part then go into 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that feeds part.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Thursday 26 December 2013 03:23 PM, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Sounds good, but may require more work 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to make sure all is good with the RSS 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and Atom feeds as a result (which I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> believe rely on path). Where path is 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> used to check for equivalence, I guess 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> name (and blog/website ID, if 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> necessary) alone will do now. We may 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> need to check (if we aren't already) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that no two categories have the same 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> name, where prior we were checking 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that no two paths are the same (i.e., 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> allowing category paths 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> USStates/Georgia and Countries/Georgia 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> but now needing to disallow two 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories named "Georgia".)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/26/2013 12:47 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am thinking of removing the path 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> coloumn also, as it does not make 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sense now as there will no 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> subcategories and all will have same 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> path (like /categoryname). WDYT ?
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Wednesday 25 December 2013 04:05 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Yes, the root category can be nuked.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/25/2013 05:28 AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I want to know as now all the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories will be top level, so 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the root category which is created 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> by default on addWeblog isn't 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> needed. So, I can remove that code 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> also ? I am in half completed with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the 1-2 steps will soon submit some 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> patched in jira issue. You can look 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> on to them whenever you will get 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> time from other projects.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Merry Christmas :)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tuesday 24 December 2013 10:57 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> AM, Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks a lot for replying soon on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> this, I understand your 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> commitments. As this will give me 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> more time on working on this 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> issue. I will give my 100% on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> this, as I also want to get into 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> more and more open source 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> projects. For Now I am focusing on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller for starting my 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> contributions in open source.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Tuesday 24 December 2013 10:51 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> No, not a rush (unfortunately I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> can't help much right now either, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> as my other project JSPWiki has a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new release going out.) But 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> please be patient with us on your 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> recent submitted patches -- we 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> haven't forgotten you and are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> happy with your efforts on this 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> project so far, we just have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> full-time jobs and, even after 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that, other obligations -- for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> open source work, we usually have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to beg, borrow and steal time to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> work on them.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/24/2013 12:05 AM, Gaurav 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am going through this having 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> some issues, although not major 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> till now. I have still working 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> on 1-2 steps, might be I am slow 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> as get less time. (Wish we also 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> have holidays of this festive 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> season in India :P) Just want to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> know isn't there any hurry for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> completing this asap ? Although, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I am sure will definitely 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> complete this as I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> understood the structure of 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller completely. Just I have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> to go through the JPA more and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> read about this.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 21 December 2013 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 04:59 PM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Looking good. Anything you're 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> missing will become apparent to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> you as you work along. The 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller installation guide and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> here 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (http://www.jroller.com/gmazza/entry/apache_derby_setup) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> can show you how to test also 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> with Derby if you'd like. (It 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> is usually simpler than MySQL, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and another benefit of working 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> on Roller is that you become 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> multiple-database-lingual very 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> quickly.)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/21/2013 06:16 AM, Gaurav 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello Glen,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks for helping in this and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I with this much deep 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> information, I can start 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> working in it. I have started 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> working on this Issue and have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> followed your steps.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1. Created a new table in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> createdb.vm and in migration 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> scripts also. I have for mow 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> stared working on MySQL.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2. In 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> JPAWeblogEntryManagerImpl 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> class, I have commented 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> updatePathTree and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> getRootWeblogCategory methods
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3. I have created a new file 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> for now Category.orm.xml and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> enterd details of new table. A 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new class Category in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> weblogger/pojos.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have created new files for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> now and will work on this and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> add new position coloum and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> code regarding this. Other 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> than UI and template Layer, I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> think I have covered all files 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> on which I have to work on the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Database and JPA layers ? 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Please tell me if I am wrong 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> anywhere or following wrong 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> workflow.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On Saturday 21 December 2013 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 04:59 AM, Glen Mazza wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hi Gaurav, we use Velocity 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> for our database scripts -- 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> you see a createdb.vm plus 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> migration scripts (5.0 to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 5.1) -- we'll want our change 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> in both places (IIRC), new 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> users have the createdb run 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and Roller upgraders with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> their current DB's have the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 5.0 to 5.1 migration script run.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> We have multiple issues here 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and I'd like to get this done 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> right (I plan on helping out 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> where you'd like). Namely, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> we've moved from a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hierarchical category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> structure (categories having 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> subcategories having their 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> own subcatorgories etc.) to a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> flat single-level structure 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (all categories are top 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> level) -- that was done a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> week or so back. Problem is, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the database tables are still 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> assuming hierarchical (they 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will work with flat 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> structures but are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> overkill--we don't need a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> parent ID column anymore.) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Also, the JPA objects are 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> designed for hierarchical but 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> can simplified a bit more to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> flat structure. Incidentally, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> "sequenceNum" is ambiguous 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> about what it means, I would 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> say "position" or "ordering" 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (INT null, null for migrators 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> who don't yet have a position 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> defined) is clearer.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I think the simplest way to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> handle this--for both new 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> installers and upgraders--is:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 1.)  Database: To create a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new table, say "category" 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> designed precisely as we 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> need, and have the migration 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> scripts select from the old 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> weblogcategory and insert 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> into the new category table. 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (We then ignore the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> weblogcategory table.) We'll 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> need to test the scripts with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> at least two databases (2 of 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> probably MySQL, Derby and/or 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> PostgreSQL) and guess for the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> others--if we're wrong the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> user community can supply a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> patch fixing it.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2.) JPA: The JPA persistence 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> object (the old 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> WeblogCategory) will need 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> simplifying/restructuring as 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> it's now flat-level. Indeed, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I think things will get a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> *lot* simpler here, as it may 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> just be the parent Weblog 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> holding a list of some sort 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> of Category objects--that's it.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 3.) UI Layer: The 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> category.jsp (or whatever 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> it's called) and its Struts 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> action class will now need to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> use the new Category object 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (and table) instead of 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> WeblogCategory. The UI page 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> will need two changes: (1) 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> all new categories will be 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> placed (and saved) at the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> bottom of the category list 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (and as result, appear last 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> (right-most) in the category 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> list, and, later (2) probably 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> have up and down buttons in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the table allowing users to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> easily reorder the categories 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> as they like. (Strictly 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> speaking, 1 alone is all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> that's needed for ordering, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> as you can 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> remove/name/delete/recreate 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories to eventually get 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> them in the position you'd 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> like, but (2) of course is 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> much nicer.)
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 4.) Template layer (haven't 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> looked into this): The 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> templates (probably just a 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> macro or two) will need 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> updating to ensure that they 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> output the category names per 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the new position order.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> It's a lot of work, but one 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> advantage is that I'd like to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> do the same thing with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> bookmarks/blogrolls (team 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> discussion pending...), 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> switch from a hierarchical to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> flat-level for those too.  If 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> we can do this for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> categories, the logic/UI 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> design, etc., will carry over 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 100% to bookmarks.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I was planning on eventually 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> getting to this myself, so am 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> available to work with you on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> whatever parts you'd like. I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> think going in order 1-2-3-4 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> and having separate commits 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> may be the cleanest way of 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> doing this. What's nice about 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> using a brand new table and 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> JPA object is that the old 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> objects can still work in the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> code while we're creating the 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new, we just don't activate 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the new until the very end.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> WDYT?  (Also, other team 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> members on the above 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ideas...?) Or are there other 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Roller tasks you'd like to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sink your teeth into instead? 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I can look at this otherwise, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> but this looks like a very 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> good exercise for someone 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> wanting to get more involved 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> in Roller, as it covers all 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> the layers of the webapp.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Glen
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> On 12/20/2013 10:43 AM, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Gaurav wrote:
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Hello,
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I have started working on 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ROL-1981, as discussed in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> previous discussion threads 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> I will add new column 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sequenceNum in 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> weblogcategory table. Then 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> we can assign sequenceNum to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> each category according to 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> websideid. If anyone have 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> some ideas regarding this, 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> please help me. Also, need 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> some help on how to go with 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> this issue, and how to add 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new coloum, I found .sql 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> file, do I need to add there 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> new column. Also, Is this 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> possible that that when I 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> restart the roller it will 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> add new column to database ?
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Thanks for Any ideas/help.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [1] - 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> https://issues.apache.org/jira/browse/ROL-1981 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>