You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "Jeremiah Johnson (JIRA)" <be...@incubator.apache.org> on 2005/05/25 19:07:57 UTC

[jira] Reopened: (BEEHIVE-734) petstoreWeb My Account link / button giving error

     [ http://issues.apache.org/jira/browse/BEEHIVE-734?page=all ]
     
Jeremiah Johnson reopened BEEHIVE-734:
--------------------------------------

     Assign To: Eddie O'Neil  (was: Jeremiah Johnson)

The logic for lookupCategoryNames isn't quite right:

--- SharedFlow.java
    private String[] lookupCategoryNames() {
        ServletContext servletContext = getServletContext();
        Object obj = servletContext.getAttribute(ATTR_CATEGORY_NAMES);
        String[] categoryNames = null;
        if(obj == null) {
            assert _catalogControl != null : "Found a null CategoryControl";
            Category[] categories = _catalogControl.getCategoryList();
            categoryNames = new String[categories.length];
            for(int i = 0; i < categories.length; i++)
                categoryNames[i] = categories[i].getCatId();

            servletContext.setAttribute(ATTR_CATEGORY_NAMES, categoryNames);
        }
        else {
            assert categoryNames instanceof String[] :
                "Found ServletContext \"" + ATTR_CATEGORY_NAMES + "\" that is not a String[]";
            categoryNames = (String[])obj;
        }

        assert categoryNames != null : "Found null category names";
        return categoryNames;
    }
---

At the point that categoryNames is checked in the assert, it is still null.  That check needs to be on obj:

        else {
            assert obj instanceof String[] :
                "Found ServletContext \"" + ATTR_CATEGORY_NAMES + "\" that is not a String[]";
            categoryNames = (String[])obj;

With the code as is, you can still get a failure with the following steps:

init DB
enter store
sign in
my account
list orders
my account

> petstoreWeb My Account link / button giving error
> -------------------------------------------------
>
>          Key: BEEHIVE-734
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-734
>      Project: Beehive
>         Type: Bug
>   Components: Samples
>     Versions: V1Beta
>  Environment: Beehive SVN 170195
>     Reporter: Jeremiah Johnson
>     Assignee: Eddie O'Neil
>     Priority: Minor
>      Fix For: V1
>  Attachments: myAccountError.png, myAccountError2.png
>
> When I click on My Account from the link at the top (after I have signed in) or from the 'list orders' page after committing a sale, I get an error.
> The easiest repro is to build / deploy the petstore, init the DB, enter the pet store, sign in (the standard user is fine), and then click on the new My Account link at the top of the page.
> - jeremiah  

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira