404 Not Found /Forms/index_1.htm

I am trying to add a form to the AWS home page created for me by the ESP wizard. My software is NetOS 7.0a. I have an AWS application, to which I have added some dynamic text fields (rpTextDisplayItem) and a form. The text fields work great but the form gives me 404 Not Found when I submit.

Is there something special you need to do to activate a new form?

I have compared my new form implementation line by line with the one in network_config, and I think I have everything set up right. But when my browser sends:

POST /Forms/index_1 HTTP/1.1

(as shown on Ethereal) AWS returns 404 not found. The equivalent access for network-config,

POST /Forms/network_config_1 HTTP/1.1

works fine. As far as I can tell, the only difference is that network_config_1 was created by the wizard and index_1 was created by me. So I’m wondering if there is some extra thing you need to do to make an AWS form accessible after it’s defined.

Here are my definitions from index.c:

static rpItem Pgindex_Items[] = {

{ eRpItemType_FormHeader, (void *) &Pgindex_Form_1 },

rpObjectDescription Pgindex_Form_1 = {
“/Forms/index_1”,
Pgindex_Form_1_Items,
&Pgindex_Form_1_ObjectExtension,
(Unsigned32) 0,
kRpPageAccess_Unprotected,
eRpDataTypeForm,
eRpObjectTypeDynamic
};

static rpObjectExtension Pgindex_Form_1_ObjectExtension = {
PanelLeftPress,
&Pgindex,
(rpObjectDescriptionPtr) 0,
0,
kRpObjFlags_None,
(char *) Pgindex_Item_23
};

static char Pgindex_Item_23[] =
C_NAME “"left_form"”;

When I put a breakpoint in function PanelLeftPress, execution never hits it, but the equivalent breakpoint in function networkSubmit always works.

Thanks,
Larry

Hello

One of the things yo do not say, so I have to ask, since you have made changes to your html code, have you (re)run the PBuilder.exe utility (netos\bin\PBuilder.exe)? If you have njot, you should.

Also if you have added html files, you’ll need to update the pbuilder.pbb file BEFORE running the PBuilder utility.

Yes, thanks for replying.

I have set up all my controls in index.htm, then run pbuilder html/index.htm, then reviewed html/index_v.c. As I said, the text controls are working fine, so I think I’m doing a few things right. I have also worked directly on index.c without invoking pbuilder.

Since my first post, I have added a new web page, status.htm. For now, it’s just a copy of index.htm. I added the link to webmenu.c, and the link appears ok on the browser when index.htm is served by the ConnectMe, but when I click the new link to status.htm I get the 404 error. So it looks like I’m missing some step needed to define new entities to RomPager/AWS.

I looked in pbuilder.pbb and the Forms are not defined there.

Turns out new entities have to be added to RpPages.c. Each new URL-linked entity needs a prototype and an entry in structure gRpObjectList.

I found that by poking at random files, looking for Pgindex. PBuilder did not generate these entries when run against the updated index.htm. Strangely enough, there don’t seem to be many forum entries that mention these objects. gRpObjectList corresponds to the ROM Object List in the AWS Toolkit PDF. I saw that yesterday but did not get the implication that new objects compiled by pbuilder have to be put in the ROM Object List by hand.

Sorry to bother, thanks for trying to help. Hopefully this thread will help the next guy.