You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
(28) |
Dec
(47) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(103) |
Feb
(44) |
Mar
(65) |
Apr
(140) |
May
(72) |
Jun
(233) |
Jul
(466) |
Aug
(51) |
Sep
(2) |
Oct
(17) |
Nov
(1) |
Dec
(7) |
2004 |
Jan
(8) |
Feb
(5) |
Mar
(28) |
Apr
(9) |
May
(7) |
Jun
|
Jul
(7) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2005 |
Jan
(1) |
Feb
|
Mar
|
Apr
(3) |
May
(24) |
Jun
(7) |
Jul
(2) |
Aug
|
Sep
|
Oct
(4) |
Nov
(3) |
Dec
(12) |
2006 |
Jan
|
Feb
(3) |
Mar
(8) |
Apr
(59) |
May
|
Jun
|
Jul
|
Aug
(24) |
Sep
|
Oct
|
Nov
|
Dec
(3) |
2007 |
Jan
|
Feb
|
Mar
|
Apr
(8) |
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
(7) |
Dec
(3) |
2008 |
Jan
|
Feb
(1) |
Mar
(16) |
Apr
(2) |
May
(2) |
Jun
|
Jul
(11) |
Aug
(3) |
Sep
(9) |
Oct
(9) |
Nov
(44) |
Dec
(34) |
2009 |
Jan
(12) |
Feb
(14) |
Mar
(11) |
Apr
(16) |
May
(41) |
Jun
(19) |
Jul
(33) |
Aug
(8) |
Sep
(3) |
Oct
|
Nov
|
Dec
(7) |
2010 |
Jan
(8) |
Feb
(50) |
Mar
(3) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(16) |
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Marc P. <ma...@an...> - 2003-04-03 14:47:54
|
Hi, I am only now starting to use #macro (good work by the way)... but I think that if your template experiences an error and you get the exception showing line number and column in the template, this value can be incorrect if you define/use macros in the template. I'm certainly seeing this... Will it be possible to fix this or is it going to be really complicated? Best wishes, Marc -- Marc Palmer |
From: Marc P. <ma...@an...> - 2003-04-03 01:43:00
|
On Wed, 02 Apr 2003 22:27:47 +0100, Marc Palmer <ma...@an...> wrote: > On Wed, 2 Apr 2003 15:37:10 -0500, <kea...@na...> wrote: > >> I've seen a similar bug (which I never got around to reporting) in >> non-servlet mode. The problem for me was that if you destroy and then >> restart the WM instance in the same VM session, the old log targets are >> still around, so things get logged multiple times. >> >> Could this be your issue? > > No, but I do have 2 WM different instances floating around - and will > have more if more "modules" exist. Could we have a bug there to do with > Broker and log targets, and multiple WM instances? I checked this - created another module (and hence a third WM) and still only logging twice. WEIRD. Any clues? Marc -- Marc Palmer |
From: Eric B. R. <eb...@tc...> - 2003-04-02 22:33:43
|
On Wednesday, April 2, 2003, at 05:28 PM, Marc Palmer wrote: > On Wed, 2 Apr 2003 16:49:53 -0500, Eric B. Ridge <eb...@tc...> wrote: > >> Hell, should we just rip out our log stuff and replace it with Log4J? >> I bet this would make a lot of folks happy... I've never used Log4J >> but have heard it's just great and have considered using it here at >> TCDI... I wouldn't mind hooking it into WebMacro first, mainly to >> find out if it sucks or not. > > Well... I don't think we should tie WM to another non-JDK API. I > haven't used Log4J and we have our own logging apis... abstracted so > we can use any underlying log transport - much like WM but simpler. Very true. But there's an advantage of not needing to maintain the code... > If anything, we should make it use the JDK 1.4 logging api... but that > has obvious bad side-effects! yeah. :( Dunno 'bout joo, but it'll be awhile before we (tcdi) moves to 1.4. Hell, just recently got 1.4.1 support on my Mac. Damn Apple. eric >>> I can create a test case if anybody wants to take a look at this. >> >> sure. I'll be glad to investigate if you'll make a test. > > As per my post, I've got a feeling this is linked to multiple WM > instances. I have a feeling some log target stuff is getting confused > between WM instances. > > I will test this shortly... I just need to add another module to my > webapp config and if I get 3 copies of all log entries... then we know > I'm right :) > > Marc > |
From: Marc P. <ma...@an...> - 2003-04-02 22:28:53
|
On Wed, 2 Apr 2003 16:49:53 -0500, Eric B. Ridge <eb...@tc...> wrote: > Hell, should we just rip out our log stuff and replace it with Log4J? I > bet this would make a lot of folks happy... I've never used Log4J but > have heard it's just great and have considered using it here at TCDI... > I wouldn't mind hooking it into WebMacro first, mainly to find out if it > sucks or not. Well... I don't think we should tie WM to another non-JDK API. I haven't used Log4J and we have our own logging apis... abstracted so we can use any underlying log transport - much like WM but simpler. If anything, we should make it use the JDK 1.4 logging api... but that has obvious bad side-effects! >> I can create a test case if anybody wants to take a look at this. > > sure. I'll be glad to investigate if you'll make a test. As per my post, I've got a feeling this is linked to multiple WM instances. I have a feeling some log target stuff is getting confused between WM instances. I will test this shortly... I just need to add another module to my webapp config and if I get 3 copies of all log entries... then we know I'm right :) Marc |
From: Eric B. R. <eb...@tc...> - 2003-04-02 21:50:02
|
On Wednesday, April 2, 2003, at 04:42 PM, kea...@na...=20= wrote: > My issue wasn't related to Servlets, I was running a non-Servlet app.=A0= =20 > And I suspect the bug has been around for a long time.=A0 I tried to=20= > unravel the logging subsystem, but I got pretty confused and then got=20= > side-tracked.=A0 Since I had a workaround, I forgot all about it.=A0 Hell, should we just rip out our log stuff and replace it with Log4J? =20= I bet this would make a lot of folks happy... I've never used Log4J=20 but have heard it's just great and have considered using it here at=20 TCDI... I wouldn't mind hooking it into WebMacro first, mainly to find=20= out if it sucks or not. > I can create a test case if anybody wants to take a look at this. sure. I'll be glad to investigate if you'll make a test. eric > > Keats > > > -----Original Message----- > > From: Eric B. Ridge [mailto:eb...@tc...] > > Sent: Wednesday, April 02, 2003 4:35 PM > > To: kea...@na... > > Cc: ma...@an...; web...@li... > > Subject: Re: [Webmacro-devel] Double-logging in Tomcat? > > > > > > On Wednesday, April 2, 2003, at 03:37=A0 PM, > > kea...@na... > > wrote: > > > > > I've seen a similar bug (which I never got around to reporting) in > > > non-servlet mode.=A0 The problem for me was that if you > > destroy and then > > > restart the WM instance in the same VM session, the old log = targets > > > are still around, so things get logged multiple times. > > > > hmm.=A0 That's interesting.=A0 Why is that?=A0 Doesn't tomcat dump = the > > classloader when the webapp is restarted? > > > > The only changes to logging recently were the ones where I > > changed all > > the output methods to accept Throwables instead of > > Exceptions.=A0 I doubt > > this could cause Marc's problem, but thought I'd mention it. > > > > eric > > > > > > > > Could this be your issue? > > > > > > Keats > > > > > > > -----Original Message----- > > > > From: Marc Palmer [mailto:ma...@an...] > > > > Sent: Wednesday, April 02, 2003 2:40 PM > > > > To: web...@li... > > > > Subject: [Webmacro-devel] Double-logging in Tomcat? > > > > > > > > > > > > > > > > Guys... anyone else seen this? I don't -think-it's me... > > but WM under > > > > Tomcat 4 on Win32, every WM log call is creating two > > > > duplicate entries in > > > > the webapp's log. Is it a config issue? > > > > > > > > Cheers > > > > -- > > > > Marc Palmer > > > > > |
From: Eric B. R. <eb...@tc...> - 2003-04-02 21:47:59
|
On Wednesday, April 2, 2003, at 04:35 PM, Eric B. Ridge wrote: > On Wednesday, April 2, 2003, at 03:37 PM,=20 > kea...@na... wrote: > >> I've seen a similar bug (which I never got around to reporting) in=20 >> non-servlet mode.=A0 The problem for me was that if you destroy and=20= >> then restart the WM instance in the same VM session, the old log=20 >> targets are still around, so things get logged multiple times. > > hmm. That's interesting. Why is that? Doesn't tomcat dump the=20 > classloader when the webapp is restarted? duh, you said non-servlet mode. my bad. /me needs to pay attention. eric > > The only changes to logging recently were the ones where I changed all=20= > the output methods to accept Throwables instead of Exceptions. I=20 > doubt this could cause Marc's problem, but thought I'd mention it. > > eric > >> >> Could this be your issue? >> >> Keats >> >> > -----Original Message----- >> > From: Marc Palmer [mailto:ma...@an...] >> > Sent: Wednesday, April 02, 2003 2:40 PM >> > To: web...@li... >> > Subject: [Webmacro-devel] Double-logging in Tomcat? >> > >> > >> > >> > Guys... anyone else seen this? I don't -think-it's me... but WM=20 >> under >> > Tomcat 4 on Win32, every WM log call is creating two >> > duplicate entries in >> > the webapp's log. Is it a config issue? >> > >> > Cheers >> > -- >> > Marc Palmer >> > >> > >> > >> > ------------------------------------------------------- >> > This SF.net email is sponsored by: ValueWeb: >> > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! >> > No other company gives more support or power for your dedicated=20 >> server >> > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ >> > _______________________________________________ >> > Webmacro-devel mailing list >> > Web...@li... >> > https://lists.sourceforge.net/lists/listinfo/webmacro-devel >> > >> > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Webmacro-devel mailing list > Web...@li... > https://lists.sourceforge.net/lists/listinfo/webmacro-devel |
From: <kea...@na...> - 2003-04-02 21:42:14
|
My issue wasn't related to Servlets, I was running a non-Servlet app. = And I suspect the bug has been around for a long time. I tried to unravel = the logging subsystem, but I got pretty confused and then got side-tracked. Since I had a workaround, I forgot all about it. =20 I can create a test case if anybody wants to take a look at this. Keats > -----Original Message----- > From: Eric B. Ridge [mailto:eb...@tc...] > Sent: Wednesday, April 02, 2003 4:35 PM > To: kea...@na... > Cc: ma...@an...; web...@li... > Subject: Re: [Webmacro-devel] Double-logging in Tomcat? >=20 >=20 > On Wednesday, April 2, 2003, at 03:37 PM,=20 > kea...@na...=20 > wrote: >=20 > > I've seen a similar bug (which I never got around to reporting) in=20 > > non-servlet mode.=A0 The problem for me was that if you=20 > destroy and then=20 > > restart the WM instance in the same VM session, the old log targets = > > are still around, so things get logged multiple times. >=20 > hmm. That's interesting. Why is that? Doesn't tomcat dump the=20 > classloader when the webapp is restarted? >=20 > The only changes to logging recently were the ones where I=20 > changed all=20 > the output methods to accept Throwables instead of=20 > Exceptions. I doubt=20 > this could cause Marc's problem, but thought I'd mention it. >=20 > eric >=20 > > > > Could this be your issue? > > > > Keats > > > > > -----Original Message----- > > > From: Marc Palmer [mailto:ma...@an...] > > > Sent: Wednesday, April 02, 2003 2:40 PM > > > To: web...@li... > > > Subject: [Webmacro-devel] Double-logging in Tomcat? > > > > > > > > > > > > Guys... anyone else seen this? I don't -think-it's me...=20 > but WM under > > > Tomcat 4 on Win32, every WM log call is creating two > > > duplicate entries in > > > the webapp's log. Is it a config issue? > > > > > > Cheers > > > -- > > > Marc Palmer > > > |
From: Eric B. R. <eb...@tc...> - 2003-04-02 21:35:24
|
On Wednesday, April 2, 2003, at 03:37 PM, kea...@na...=20= wrote: > I've seen a similar bug (which I never got around to reporting) in=20 > non-servlet mode.=A0 The problem for me was that if you destroy and = then=20 > restart the WM instance in the same VM session, the old log targets=20 > are still around, so things get logged multiple times. hmm. That's interesting. Why is that? Doesn't tomcat dump the=20 classloader when the webapp is restarted? The only changes to logging recently were the ones where I changed all=20= the output methods to accept Throwables instead of Exceptions. I doubt=20= this could cause Marc's problem, but thought I'd mention it. eric > > Could this be your issue? > > Keats > > > -----Original Message----- > > From: Marc Palmer [mailto:ma...@an...] > > Sent: Wednesday, April 02, 2003 2:40 PM > > To: web...@li... > > Subject: [Webmacro-devel] Double-logging in Tomcat? > > > > > > > > Guys... anyone else seen this? I don't -think-it's me... but WM = under > > Tomcat 4 on Win32, every WM log call is creating two > > duplicate entries in > > the webapp's log. Is it a config issue? > > > > Cheers > > -- > > Marc Palmer > > > > > > > > ------------------------------------------------------- > > This SF.net email is sponsored by: ValueWeb: > > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > > No other company gives more support or power for your dedicated=20 > server > > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > > _______________________________________________ > > Webmacro-devel mailing list > > Web...@li... > > https://lists.sourceforge.net/lists/listinfo/webmacro-devel > > > |
From: Marc P. <ma...@an...> - 2003-04-02 21:26:18
|
On Wed, 2 Apr 2003 15:37:10 -0500, <kea...@na...> wrote: > I've seen a similar bug (which I never got around to reporting) in > non-servlet mode. The problem for me was that if you destroy and then > restart the WM instance in the same VM session, the old log targets are > still around, so things get logged multiple times. > > Could this be your issue? No, but I do have 2 WM different instances floating around - and will have more if more "modules" exist. Could we have a bug there to do with Broker and log targets, and multiple WM instances? -- Marc Palmer http://www.wangjammers.org |
From: <kea...@na...> - 2003-04-02 20:37:32
|
I've seen a similar bug (which I never got around to reporting) in non-servlet mode. The problem for me was that if you destroy and then restart the WM instance in the same VM session, the old log targets are still around, so things get logged multiple times. Could this be your issue? Keats > -----Original Message----- > From: Marc Palmer [mailto:ma...@an...] > Sent: Wednesday, April 02, 2003 2:40 PM > To: web...@li... > Subject: [Webmacro-devel] Double-logging in Tomcat? > > > > Guys... anyone else seen this? I don't -think-it's me... but WM under > Tomcat 4 on Win32, every WM log call is creating two > duplicate entries in > the webapp's log. Is it a config issue? > > Cheers > -- > Marc Palmer > > > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Webmacro-devel mailing list > Web...@li... > https://lists.sourceforge.net/lists/listinfo/webmacro-devel > |
From: Marc P. <ma...@an...> - 2003-04-02 19:39:53
|
Guys... anyone else seen this? I don't -think-it's me... but WM under Tomcat 4 on Win32, every WM log call is creating two duplicate entries in the webapp's log. Is it a config issue? Cheers -- Marc Palmer |
From: Marc P. <ma...@an...> - 2003-04-02 13:59:51
|
Hi guys, It seems that Java's existing BeanInfo mechanism can be used to provide a reasonable amount of runtime help info on objects placed into a WM context. Is there a specific reason why nobody is using it for this purpose? With the WM webapp I'm working on, I could use BeanInfo to get the property names, their display names, and descriptions of each property and method (and method params). This would then be displayed in the "online help" pages of my webapp. "Helper" objects are a special case in my webapp - they are by design ANY java object, for simplicity's sake and so you can take any off-the-shelf Java class and use it. As such there is no way to get help info from them (my Plugins and Actions have methods that return help info to do with parameters and variables) This means nothing more than using the bean Introspector class - and telling people who write helpers to implement a BeanInfo class for their bean. I think this would be pretty powerful... and the code (simple wrappers around BeanInfo stuff to put into templates) would be of general use to WM users. Any thoughts? I'm just wondering if nobody bothers with BeanInfo (except for visual component beans) for a specific reason. -- Marc Palmer |
From: Marc P. <ma...@an...> - 2003-04-01 13:28:54
|
On Tue, 1 Apr 2003 10:29:04 +0200 (CEST), Endre Stølsvik <web...@st...> wrote: > | This sounds good.. > > I second that..! Great :-) > | What I am trying to help you do is to develop a framework which will > | allow and not preclude an ACID transaction. > > However, there are tons of websites that only show .. you know .. text > and > pictures. Companies that only "wants a precense on the Internet". As far as transaction stuff goes... this webapp does not -force-you to do anything specific. It has a framework to make a lot of hassle things easier and safer (like auto-scoping of template variables) but it is always possible to access the raw WebContext, request and session. So I fail to see how it can possibly prevent anything like ACID Transaction handling. However add-on plugins should make cross-page transaction management very convenient. I have an action and helper combination in mind for collating fields from multiple pages into author-defined groups. Couple this with a generic load/save mechanism for these groups of data and I think you pretty much have what Lane is after. I've also got in mind a JDBC action that will allow SQL transactions across a list of actions performed in sequence as the result of a single link. i.e. you could do this in the template: #set $startTxn = $Ignition.newAction( "startSQLTransaction") #set $saveData1 = $Ignition.newAction( "saveData") #set $saveData1.DataGroupName = "part1" #set $saveData1.OnErrorURL = $Ignition.execute( [ $Ignition.newAction( "rollbackSQLTransaction") ] ) #set $saveData2 = $Ignition.newAction( "saveData") #set $saveData2.DataGroupName = "part2" #set $saveData2.OnErrorURL = $Ignition.execute( [ $Ignition.newAction( "rollbackSQLTransaction") ] ) #set $commitTxn = $Ignition.newAction( "commitSQLTransaction") ...OK this isn't beautiful syntax... but it could possibly be cleaned up using a #macro One key thing I am focusing on is deferring serious functionality to actions executed on the server as the result of a request, rather than executing code "in line" as a template is executed. I personally think the latter is a convenience AKA a drity hack, because your error handling in WM templates is almost non-existent and you do not have control over the response when something goes wrong. > If this thing was mixed with a content management system (which enforced > some kind of transaction acidity on the content/articles it creates and > manages), then you'd have something that would allow most "websites" to > be developed fast and good. Yes - this is precisely the kind of thing I have in mind. I forgot to include on the list of shipped "plugins": * SQL database access (SELECTs and INSERTs, maybe UPDATEs) * Content management of some kind - with abstracted data storage. > What I'm suggesting, is that ideally this thing should have some DB-based > CMS "on the side", that allows web-page developers to "fetch" articles, > with maybe some "#fetcharticle secure $params.CurrentArticle as > $article", > and this would get article as specified by the URL ($params) from the > database, and put in $article. $article is of Article class, having > methods like "getElements()" to get all elements, "getElement(int > which/String namedElement)", "toHTML()" for dumb rendering etc. > > Just an idea.. You're bang on track :-) > And here's another, while I'm at it: > > Make the URL parsed something like this: > http://dontcare/webapp/template/extra/path/info?param1=2¶m2=3 > > Webapp is natural, since that's how Servlets are specified. "template" > defines which template to use as renderer/'category template', maybe > simply "name-mapped" (e.g. directly specifying a template located in > e.g. > WEB-INF/categories/, with ".wm" appended), and "/extra/path/info" is > given > as $pathinfo to this template, as well as all the params in $params. Well I already have something a little like this - extra path info is currently used to locate the "module" to use. You can host many "applications" all with their own set of helpers, plugins and actions (as well as inheriting the default ones), and you do this using modules. The module name is just the part of the URI after the servlet name. > If extra-path-info was "secured" (e.g. doesn't contain any ".."s), it > could be used both directly as a template-filename (with path), starting > form WEB-INF/templates/, being included from the "render-template", or it > could be used as a cool mapping into some CMS structure in a zillion > ways. I don't think ".." is a problem with WM is it, unless you are using the file template provider? > Or, if the site was small enough, forget about all that, and just use the > first element, "template" to fetch template directly.. It already supports template names. i.e.: http://myserver/ignition/ignitionServlet/myModule/index.wmt This is working. > The idea is to make a whole set of possibilities open from the start, w/o > constraining the system too much. Yep! > | > > | > So, as far as web developers are concerned that's it pretty much. It > | > seems simple, and it is really. That's the beauty of it, I think. > > It sounds cool, but.. What about PHP? I mean, there's probably some > reason > why it started out as a simple "Professional Home Page" language, and've > ended up as "PHP Hypertext Preprocessor" with _tons_ of stash. > > But it's not quite what you're making either, maybe? It's not primarily a > PHP-killer, but more of a Q'n'D website-maker..? Well yes and no. I think of it as a potential PHP killer because we can get a huge bundle of plugins going for free, and people could make their own distros if they like (potentially including Tomcat)... What can you do with PHP that you couldn't do with a "run and go" WM application? Sure, you need servlet hosting.... The performance of the WM app should be much better too. I know people who have done some benchmarks on PHP vs. Java and found huge increases using Java. -- Marc Palmer |
From: <web...@st...> - 2003-04-01 08:29:10
|
On Mon, 31 Mar 2003, Lane Sharman wrote: | Hi Marc, | | This sounds good.. I second that..! | | I think my point that I have been trying to raise stems from the issue | of the lure of having a really easy web app kit and then thinking you | can do some things like consistent transactions with it out of the box. | See google "Transaction ACID" for a general discussion on transaction | consistency and how easy is to get it wrong in a multi-threaded env like | a single servlet. | | What I am trying to help you do is to develop a framework which will | allow and not preclude an ACID transaction. However, there are tons of websites that only show .. you know .. text and pictures. Companies that only "wants a precense on the Internet". If this thing was mixed with a content management system (which enforced some kind of transaction acidity on the content/articles it creates and manages), then you'd have something that would allow most "websites" to be developed fast and good. The following is a side-note to people that constantly whine that "it's impossible to make a CMS": It IS possible to make a CMS! We (CoreTrek) actually have one! ;) It's in PHP. The idea is that articles are made up of "elements", e.g. picture, textfield, single text-line, movie, "wysiwyg" text-element. Well, sounds somewhat static, right? But how our developers have come about using this (I'm not on that group, btw) is that they use the content of such elements as triggers on the site. So they develop the site, then tell the customer: if you put a "1" in this field here (a single-line), then the background becomes green, and if you put a "1" here, then the image is rotated 90 degrees, this date here tells the system which day the bell shall ring, etc. In addition, a article have a tag that tells which "render-page" that should be used to show it. This means that the -editor- (the CMS) is pretty static (it has lots of "add-on" modules that allow different pricing strategies, of course), but the -websites- are developed with more logic (also in PHP), they aren't simply a dumb display of the structure and articles in the CMS. What I'm suggesting, is that ideally this thing should have some DB-based CMS "on the side", that allows web-page developers to "fetch" articles, with maybe some "#fetcharticle secure $params.CurrentArticle as $article", and this would get article as specified by the URL ($params) from the database, and put in $article. $article is of Article class, having methods like "getElements()" to get all elements, "getElement(int which/String namedElement)", "toHTML()" for dumb rendering etc. Just an idea.. And here's another, while I'm at it: Make the URL parsed something like this: http://dontcare/webapp/template/extra/path/info?param1=2¶m2=3 Webapp is natural, since that's how Servlets are specified. "template" defines which template to use as renderer/'category template', maybe simply "name-mapped" (e.g. directly specifying a template located in e.g. WEB-INF/categories/, with ".wm" appended), and "/extra/path/info" is given as $pathinfo to this template, as well as all the params in $params. If extra-path-info was "secured" (e.g. doesn't contain any ".."s), it could be used both directly as a template-filename (with path), starting form WEB-INF/templates/, being included from the "render-template", or it could be used as a cool mapping into some CMS structure in a zillion ways. Or, if the site was small enough, forget about all that, and just use the first element, "template" to fetch template directly.. The idea is to make a whole set of possibilities open from the start, w/o constraining the system too much. | > | > So, as far as web developers are concerned that's it pretty much. It | > seems simple, and it is really. That's the beauty of it, I think. It sounds cool, but.. What about PHP? I mean, there's probably some reason why it started out as a simple "Professional Home Page" language, and've ended up as "PHP Hypertext Preprocessor" with _tons_ of stash. But it's not quite what you're making either, maybe? It's not primarily a PHP-killer, but more of a Q'n'D website-maker..? -- Mvh, Endre Stølsvik M[+47 93054050] F[+47 51625182] Developer @ CoreTrek AS - http://www.coretrek.com/ CoreTrek corporate portal / EIP - http://www.corelets.com/ |
From: Lane S. <la...@op...> - 2003-04-01 00:32:47
|
Hi Marc, This sounds good.. I think my point that I have been trying to raise stems from the issue of the lure of having a really easy web app kit and then thinking you can do some things like consistent transactions with it out of the box. See google "Transaction ACID" for a general discussion on transaction consistency and how easy is to get it wrong in a multi-threaded env like a single servlet. What I am trying to help you do is to develop a framework which will allow and not preclude an ACID transaction. -Lane Marc Palmer wrote: > > Hi, > > As per Lane's recommendation a few days ago, I'm going to start a > couple of threads detailing what my forthcoming webapp offes designers > and java devlopers - treating each separately. Sorry for the delay in > all this but we had a baby 3 weeks ago and I'm "off work" and doing as > much as I can to help with caring for our new daughter! OK, on to my > other baby... > > First let's define what I mean by web designer. I mean anybody who > hacks together websites, whether professional or amateur, but > typically not a Java programmer.There are literally tens of millions > of would-be web designers out there - an order of magnitude more than > there are "serious" java programmers (i.e. people who can write more > than a main() method with a for loop in it). > > For these "web designers" the webapp will offer a single binary > download that can be installed immediately in any servlet container > and template- driven pages can be viewed immediately. > > After doing this, they can view the webapp's docs which are served via > the webapp itself using WM, and "context sensitive" help that tells > them exactly what request parameters and template variables are > provided by the actions, helpers and plugins. > > They can immediately edit the demo templates and instantly see the > changes in their browser by hitting Refresh. At this point they > already have a powerful content system - server side includes, loops, > variable passing, macros, session vars and so on. > > Then they can learn about the more advanced features - helpers, > plugins and actions - after which they can download these classes from > websites, most likely webmacro.org, that add more advanced functionality. > > Built in to the binary deployment should be some of the most common > advanced facilities: > > * Sending e-mail > * Logging clicks to links > * User login/authentication > * Storage/retrieval of field data by "view id", an arbitrary grouping > mechanism that spans actions and pages. > * Useful helpers - file system access, date manipulation, simple XML > DOM access (for RSS display for example) > > So, as far as web developers are concerned that's it pretty much. It > seems simple, and it is really. That's the beauty of it, I think. > > I'll try to post about the developer side of it tomorrow. > > Marc -- Lane Sharman Learn About Conga, All Java GUI Builder: http://opendoors.com/conga Java Software Portal: http://opendoors.com |
From: Marc P. <ma...@an...> - 2003-04-01 00:09:24
|
Hi, As per Lane's recommendation a few days ago, I'm going to start a couple of threads detailing what my forthcoming webapp offes designers and java devlopers - treating each separately. Sorry for the delay in all this but we had a baby 3 weeks ago and I'm "off work" and doing as much as I can to help with caring for our new daughter! OK, on to my other baby... First let's define what I mean by web designer. I mean anybody who hacks together websites, whether professional or amateur, but typically not a Java programmer.There are literally tens of millions of would-be web designers out there - an order of magnitude more than there are "serious" java programmers (i.e. people who can write more than a main() method with a for loop in it). For these "web designers" the webapp will offer a single binary download that can be installed immediately in any servlet container and template- driven pages can be viewed immediately. After doing this, they can view the webapp's docs which are served via the webapp itself using WM, and "context sensitive" help that tells them exactly what request parameters and template variables are provided by the actions, helpers and plugins. They can immediately edit the demo templates and instantly see the changes in their browser by hitting Refresh. At this point they already have a powerful content system - server side includes, loops, variable passing, macros, session vars and so on. Then they can learn about the more advanced features - helpers, plugins and actions - after which they can download these classes from websites, most likely webmacro.org, that add more advanced functionality. Built in to the binary deployment should be some of the most common advanced facilities: * Sending e-mail * Logging clicks to links * User login/authentication * Storage/retrieval of field data by "view id", an arbitrary grouping mechanism that spans actions and pages. * Useful helpers - file system access, date manipulation, simple XML DOM access (for RSS display for example) So, as far as web developers are concerned that's it pretty much. It seems simple, and it is really. That's the beauty of it, I think. I'll try to post about the developer side of it tomorrow. Marc -- Marc Palmer http://www.wangjammers.org |
From: Keats K. <kea...@na...> - 2003-03-30 16:24:22
|
Lane Sharman wrote: > did you commit the test to cvs so I can check it out? Yes. See: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/webmacro/webmacro/test/unit/org/webmacro/template/TestGetSet.java I'd appreciated if you tried it out. Keats |
From: Lane S. <la...@op...> - 2003-03-30 00:38:34
|
did you commit the test to cvs so I can check it out? -Lane Keats Kirsch wrote: > Strangely I can't reproduce this error on my home machine. I created > some tests and added them to the test/unit > org.webmacro.template.TestGetSet class and everything seems to be > working. > Could this be a platform specific problem? I'm running WinXP Home > with Sun's JDK 1.4.1_01 at home. At the office I have Win2K and a > similar JDK version. If other folks could try this test on different > platforms I'd appreciated it. > > Keats > > kea...@na... wrote: > >> Marc, >> >> I think I have finally tracked this one down. >> >> Line 781 in PropertyOperatorCache.java, in the >> PropertyOperatorCache.PropertyOperator.setProperty() method: >> >> parent = getProperty(context, instance, names, pos, pos); >> >> should be: >> >> parent = getProperty(context, instance, names, pos, pos >> + 1); >> >> Don't ask me to explain this (I can't). I'm guessing that this bug >> has been in the code forever. I suppose not many people have tried >> to use the binary mutator syntax, i.e., >> >> #set $obj.Prop.Key = "value" >> >> for >> >> $obj.setProp("Key", "value") >> >> Anyway, I'll try to write some unit tests for this and make sure it >> doesn't break anything before committing the change. >> >> Keats >> >> >> >> > -----Original Message----- >> > From: Marc Palmer [mailto:ma...@an...] >> > Sent: Wednesday, March 19, 2003 10:19 PM >> > To: web...@li... >> > Subject: [Webmacro-devel] Binary accessor "set" problem >> > >> > >> > >> > Hi all, >> > >> > I'm working against WM 1.1 final source, developing this WM >> > "run and go" >> > webapp currently codenamed "WebMacro Ignition". >> > >> > I've come across a funny. I can't -set-a property that has a binary >> > accessor. A glance over the WM source for this > >> (PropertyOperatorCache) has >> > not enlightened me and the laptop I'm using is just toooo slow for >> > interactive debug against Tomcat at the mo. >> > >> > Anyway, I'm getting this error in my template: >> > >> > Ignition encountered an error while executing a template: >> > FileTemplate:C:\Program Files\Apache Group\Tomcat >> > 4.1\webapps\ignition\WEB- >> > INF\classes\index.wm: >> > org.webmacro.PropertyException$NoSuchPropertyException: No >> > public property >> > Parameters on variable $action of class >> > org.webmacro.ignition.api.action.ActionParams at C:\Program >> > Files\Apache >> > Group\Tomcat 4.1\webapps\ignition\WEB-INF\classes\index.wm:17.2 >> > >> > The part of the template causing offence is: >> > >> > #set $action.Parameters.Template = "itworked.wm" >> > >> > ...and $action is of type ActionParams which has the >> > following methods: >> > >> > public void setParameters(String key, Object value) >> > >> > public String getParameters(String key) >> > >> > ... I know binary accessor "get" works as have used it >> > elsewhere but this >> > is the first time I've tried to "set" using it. >> > >> > Also, while binary accessor is certainly a convenience I'm >> > starting to >> > wonder whether it is a bit of an abomination. i.e. you cannot >> > rewrite my >> > previous bit of WM script as this: >> > >> > #set $params = $action.Parameters >> > #set $params.Template = "itworked.wm" >> > >> > Well... you could if there was a "proxy" created to represent >> > the virtual >> > field "Parameters" internally in WM that handled this but it would be >> > pretty nasty. Granted many web developers would not think of >> > doing this, >> > but it disturbs me that we can get ourselves into an >> > inconsistent situation >> > by using binary accessors. I think I may stop using them >> > having realised >> > this. >> > >> > $0.02 >> > >> <snip> >> > > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: > The Definitive IT and Networking Event. Be There! > NetWorld+Interop Las Vegas 2003 -- Register today! > http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en > _______________________________________________ > Webmacro-devel mailing list > Web...@li... > https://lists.sourceforge.net/lists/listinfo/webmacro-devel > -- Lane Sharman Learn About Conga, All Java GUI Builder: http://opendoors.com/conga Java Software Portal: http://opendoors.com |
From: Keats K. <kea...@na...> - 2003-03-30 00:16:26
|
Strangely I can't reproduce this error on my home machine. I created some tests and added them to the test/unit org.webmacro.template.TestGetSet class and everything seems to be working. Could this be a platform specific problem? I'm running WinXP Home with Sun's JDK 1.4.1_01 at home. At the office I have Win2K and a similar JDK version. If other folks could try this test on different platforms I'd appreciated it. Keats kea...@na... wrote: > Marc, > > I think I have finally tracked this one down. > > Line 781 in PropertyOperatorCache.java, in the > PropertyOperatorCache.PropertyOperator.setProperty() method: > > parent = getProperty(context, instance, names, pos, pos); > > should be: > > parent = getProperty(context, instance, names, pos, pos + > 1); > > Don't ask me to explain this (I can't). I'm guessing that this bug > has been in the code forever. I suppose not many people have tried to > use the binary mutator syntax, i.e., > > #set $obj.Prop.Key = "value" > > for > > $obj.setProp("Key", "value") > > Anyway, I'll try to write some unit tests for this and make sure it > doesn't break anything before committing the change. > > Keats > > > > > -----Original Message----- > > From: Marc Palmer [mailto:ma...@an...] > > Sent: Wednesday, March 19, 2003 10:19 PM > > To: web...@li... > > Subject: [Webmacro-devel] Binary accessor "set" problem > > > > > > > > Hi all, > > > > I'm working against WM 1.1 final source, developing this WM > > "run and go" > > webapp currently codenamed "WebMacro Ignition". > > > > I've come across a funny. I can't -set-a property that has a binary > > accessor. A glance over the WM source for this > > (PropertyOperatorCache) has > > not enlightened me and the laptop I'm using is just toooo slow for > > interactive debug against Tomcat at the mo. > > > > Anyway, I'm getting this error in my template: > > > > Ignition encountered an error while executing a template: > > FileTemplate:C:\Program Files\Apache Group\Tomcat > > 4.1\webapps\ignition\WEB- > > INF\classes\index.wm: > > org.webmacro.PropertyException$NoSuchPropertyException: No > > public property > > Parameters on variable $action of class > > org.webmacro.ignition.api.action.ActionParams at C:\Program > > Files\Apache > > Group\Tomcat 4.1\webapps\ignition\WEB-INF\classes\index.wm:17.2 > > > > The part of the template causing offence is: > > > > #set $action.Parameters.Template = "itworked.wm" > > > > ...and $action is of type ActionParams which has the > > following methods: > > > > public void setParameters(String key, Object value) > > > > public String getParameters(String key) > > > > ... I know binary accessor "get" works as have used it > > elsewhere but this > > is the first time I've tried to "set" using it. > > > > Also, while binary accessor is certainly a convenience I'm > > starting to > > wonder whether it is a bit of an abomination. i.e. you cannot > > rewrite my > > previous bit of WM script as this: > > > > #set $params = $action.Parameters > > #set $params.Template = "itworked.wm" > > > > Well... you could if there was a "proxy" created to represent > > the virtual > > field "Parameters" internally in WM that handled this but it would be > > pretty nasty. Granted many web developers would not think of > > doing this, > > but it disturbs me that we can get ourselves into an > > inconsistent situation > > by using binary accessors. I think I may stop using them > > having realised > > this. > > > > $0.02 > > > <snip> > |
From: Lane S. <la...@op...> - 2003-03-28 22:37:01
|
> > > Anyway, I'll try to write some unit tests > music to my ears :) |
From: <kea...@na...> - 2003-03-28 21:09:41
|
Marc, I think I have finally tracked this one down. Line 781 in PropertyOperatorCache.java, in the PropertyOperatorCache.PropertyOperator.setProperty() method: parent = getProperty(context, instance, names, pos, pos); should be: parent = getProperty(context, instance, names, pos, pos + 1); Don't ask me to explain this (I can't). I'm guessing that this bug has been in the code forever. I suppose not many people have tried to use the binary mutator syntax, i.e., #set $obj.Prop.Key = "value" for $obj.setProp("Key", "value") Anyway, I'll try to write some unit tests for this and make sure it doesn't break anything before committing the change. Keats > -----Original Message----- > From: Marc Palmer [mailto:ma...@an...] > Sent: Wednesday, March 19, 2003 10:19 PM > To: web...@li... > Subject: [Webmacro-devel] Binary accessor "set" problem > > > > Hi all, > > I'm working against WM 1.1 final source, developing this WM > "run and go" > webapp currently codenamed "WebMacro Ignition". > > I've come across a funny. I can't -set-a property that has a binary > accessor. A glance over the WM source for this > (PropertyOperatorCache) has > not enlightened me and the laptop I'm using is just toooo slow for > interactive debug against Tomcat at the mo. > > Anyway, I'm getting this error in my template: > > Ignition encountered an error while executing a template: > FileTemplate:C:\Program Files\Apache Group\Tomcat > 4.1\webapps\ignition\WEB- > INF\classes\index.wm: > org.webmacro.PropertyException$NoSuchPropertyException: No > public property > Parameters on variable $action of class > org.webmacro.ignition.api.action.ActionParams at C:\Program > Files\Apache > Group\Tomcat 4.1\webapps\ignition\WEB-INF\classes\index.wm:17.2 > > The part of the template causing offence is: > > #set $action.Parameters.Template = "itworked.wm" > > ...and $action is of type ActionParams which has the > following methods: > > public void setParameters(String key, Object value) > > public String getParameters(String key) > > ... I know binary accessor "get" works as have used it > elsewhere but this > is the first time I've tried to "set" using it. > > Also, while binary accessor is certainly a convenience I'm > starting to > wonder whether it is a bit of an abomination. i.e. you cannot > rewrite my > previous bit of WM script as this: > > #set $params = $action.Parameters > #set $params.Template = "itworked.wm" > > Well... you could if there was a "proxy" created to represent > the virtual > field "Parameters" internally in WM that handled this but it would be > pretty nasty. Granted many web developers would not think of > doing this, > but it disturbs me that we can get ourselves into an > inconsistent situation > by using binary accessors. I think I may stop using them > having realised > this. > > $0.02 > <snip> |
From: Lane S. <la...@op...> - 2003-03-28 16:28:24
|
Eric B. Ridge wrote: >> ant test >> is really magic once you get hooked. So, it is a matter of changing >> your test drug of choice :). >> >> ant {test-mySpecialThingie} >> is what I use to test a subset of existing tests. > > > FYI, I added this to WM's ant script awhile back: > ant test -Dtest=TestMath > > it's kinda wordy, but you can easily pick one test to run. nice. I will start to use this too. -Lane > > > eric > > > > ------------------------------------------------------- > This SF.net email is sponsored by: > The Definitive IT and Networking Event. Be There! > NetWorld+Interop Las Vegas 2003 -- Register today! > http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en > _______________________________________________ > Webmacro-devel mailing list > Web...@li... > https://lists.sourceforge.net/lists/listinfo/webmacro-devel > -- Lane Sharman Learn About Conga, All Java GUI Builder: http://opendoors.com/conga Java Software Portal: http://opendoors.com |
From: Eric B. R. <eb...@tc...> - 2003-03-28 16:06:09
|
> ant test > is really magic once you get hooked. So, it is a matter of changing > your test drug of choice :). > > ant {test-mySpecialThingie} > is what I use to test a subset of existing tests. FYI, I added this to WM's ant script awhile back: ant test -Dtest=TestMath it's kinda wordy, but you can easily pick one test to run. eric |
From: Lane S. <la...@op...> - 2003-03-28 15:52:28
|
k, Just as an aside, I had a main() dependency too one time. I am determined to make you kick this habit now. Why do a test case? Because... a) a given fix might break something else which you have no knowledge and could not consider. This is the beauty of a big test suite like we now have. b) the test code is not in the baseline product with a confusing main() now in the API docs for the new WM reader to scratch his head about. c) the new test case improves the genetic code of WM: a new allele exists which should not be broken in the future by some mutant addition to the baseline or to a test case. d) you will sleep better knowing that if someone does break MathTool in the future, your compatriots will see that when they run ant test. e) it is easier to drop a method into an existing test case and then type 'ant test' than creating your own main() method one you have a test class that is one you are familiar with. All test cases subclass a base class Brian wrote which make it trivial to create a class like TestKeatsChanges.java. That would be fine with me :). The more tests the better. ant test is really magic once you get hooked. So, it is a matter of changing your test drug of choice :). ant {test-mySpecialThingie} is what I use to test a subset of existing tests. I am now writing test cases before I actually write a class :). -Lane kea...@na... wrote: > I guess I was just lazy. There aren't any existing tests for the > MathTool AFAICT. > > I don't know exactly how to do a test case for random() -- since we > obviously don't know what the expected result is. I suppose I could > loop a bunch of times and make sure that all values returned are in > range and that all values in the range get returned, or I could just > compute the min/max/mean and check them. But this seems like overkill > for such a simple (one-line) method. > > The main method I added allows you to do a quick visual check that the > thing is working. This is better than what we had before. > > Keats > > > -----Original Message----- > > From: Lane Sharman [mailto:la...@op...] > > Sent: Friday, March 28, 2003 10:22 AM > > To: Keats Kirsch > > Cc: web...@li...; jim...@ag...; > > EricB. Ridge > > Subject: Re: [Webmacro-devel] MathTool.random broken? > > > > > > Why did you not add a test case? > > > > -Lane > > > > Keats Kirsch wrote: > > > > > I've committed this change along with a little test in main(). > > > > > > Keats > > > > > > Eric B. Ridge wrote: > > > > > >> On Thursday, March 27, 2003, at 11:29 AM, > > kea...@na... > > >> wrote: > > >> > > >> > > I may fail to understand the code, but it seems wrong to me > > >> > > so I changed it to > > >> > > > > >> > > public static final int random(int start, int end) { > > >> > > int iRet = start + (int) ((end - start + > > >> > > 1)*java.lang.Math.random()); > > >> > > return iRet > end ? end : iRet; > > >> > > } > > >> > > > >> > Your code looks right to me, but the final test is > > unnecessary, since > > >> > Math.random() is always less than 1.0. > > >> > > > >> > Eric, I think this was your thing. Do you want to do the fix, or > > >> > shall I? > > >> > > >> If you're in the mood, go ahead. :) I'm snowed under here at the > > >> office. > > >> > > >> eric > > >> > > > > > > > > > > > > > > > > > > ------------------------------------------------------- > > > This SF.net email is sponsored by: > > > The Definitive IT and Networking Event. Be There! > > > NetWorld+Interop Las Vegas 2003 -- Register today! > > > http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en > > > _______________________________________________ > > > Webmacro-devel mailing list > > > Web...@li... > > > https://lists.sourceforge.net/lists/listinfo/webmacro-devel > > > > > > > -- > > Lane Sharman > > Learn About Conga, All Java GUI Builder: http://opendoors.com/conga > > Java Software Portal: http://opendoors.com > > > > > > > > > -- Lane Sharman Learn About Conga, All Java GUI Builder: http://opendoors.com/conga Java Software Portal: http://opendoors.com |
From: Eric B. R. <eb...@tc...> - 2003-03-28 15:43:41
|
On Friday, March 28, 2003, at 10:39 AM, kea...@na...=20 wrote: > I stand corrected.=A0 EBR, you da man! 'cept I've never seen that test fail, so it might not be sufficient. eric > > Keats > > > -----Original Message----- > > > I guess I was just lazy.=A0 There aren't any existing tests for = the=A0 > > > MathTool AFAICT.=A0 > > > > > > I don't know exactly how to do a test case for random() -- > > since we=A0 > > > obviously don't know what the expected result is.=A0 I > > suppose I could=A0 > > > loop a bunch of times and make sure that all values > > returned are in=A0 > > > range and that all values in the range get returned, or I > > could just=A0 > > > compute the min/max/mean and check them.=A0 But this seems > > like overkill=A0 > > > for such a simple (one-line) method.=A0 > > > > http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/webmacro/webmac > > ro/test/ > > unit/org/webmacro/util/TestMathTool.java?rev=3D1.2&content-type=3Dtext= / > > vnd.viewcvs-markup > > > > it's been there since Nov. 2002 and does basically what you = describe=A0 > > above. > > > > eric > > > |