Helma Logo
main list history

Questions

I will begin to post questions here which I will need to answer as I work on writing my wiki articles. At this time, most of my questions about Helma are in my other pages but I will begin to transition them here. Anyone feel free to answer them directly here.

Q: What does the User prototype provide which the HopObject prototype does not? Does the User prototype exist in Helma even if I have no User directory in my application? The reason I ask is because no API page exists for any "User" object in the reference. Does an application break if neither "Root" not "User" directories exist in the application directory?

Q: If you use HopObjects to couple the serving of a URL request (the path) with the data which will persist to the data store (internal database for example), then what are the ramifications if you later decide to change the structure of the URLs? Doesn't this pose a problem when using this dual nature of HopObjects? Isn't the request structure being persisted in data?
A: No freaking idea.

Q: Does the project for the Tutorial exist somewhere where it may be downloaded?
A: Kristan "Krispy" Uccello posted it on his blog. Thanks Kristan http://www.helmablog.com/?page_id=11

Q: Are HopObjects attached to the session.user HopObject accessible via a URL scheme? Such as /users/user1/mainhopobject What is this request supposed to look like?
A: As far as this newb can tell, yes they are because users are indeed connected to root. Make sure you at least have a main.hac action in HopObject dir or in User dir. However, when this newb calls session.login(new User()) - the new user does not seem to attach automatically. Shouldn't it be doing this automatically? Otherwise what is the point of calling session.login with a HopObject? Actually, issue is that I need to call register user first. Can't assume that any HopObject passed to login would become the HopObject.

Q: In the welcome app, how/why does intro.skins get resolved to intro/skins?

Q: I need some simple examples or I need to write some simple examples. For instance, how does one attach a new HopObject to root via the Helma file structure? This should be really simple and I tried variations of _children and accessName, etc but I'm not getting it.
A: It now seems to this newb that any HopObjects which should get resolved to a URL need to be manually added in JavaScript code. For instance: in onStart(). It now seems to this newb that the directory structure of you Helma app has nothing to do with the HopObject tree. The directory structure is simply for defining prototypes which can be instantiated as HopObjects.
Also, I created a subdirectory in root and added an action in that subdirectory. However that action is available directly at {root}/action. So is there no meaning for having a subdirectory inside a prototype except just for organization?

Is Helma secure? Is it any less secure because it's running interpreted JS on the server side?

Q: Are there any common prototype patterns for Helma which may assist with application design?