Re: Beware BBEdit HTML Formatting with inline ognl tags

From: Kieran Kelleher (kieran_list..ac.com)
Date: Mon May 14 2007 - 13:23:47 EDT

  • Next message: Kieran Kelleher: "Deadlock ..."

    Thanks Mike.

    WOOgnl and the inline stuff is really great, especially for simple
    tags like those those pesky conditionals and strings ... keeps the
    WOComponents nice and clean. It is pretty amazing how extensible
    WebObjects is .....

    Cheers and thanks, Kieran

    On May 14, 2007, at 1:04 PM, Mike Schrag wrote:

    > I'll work on formatting later this week ...
    >
    > On May 14, 2007, at 12:58 PM, Kieran Kelleher wrote:
    >
    >> Replying with a workaround .... adding a shortcut (aka. alias)
    >> into Application constructor will alleviate inadvertent
    >> lowercasing of inline class names. Really applying formatting to
    >> the HTML is essential for those old WOBuilder templates if one
    >> wants to now edit them in WOLips component editor. The workaround:
    >> // Register my html shortcuts
    >> // This one caters for situations where BBEdit lowercases
    >> the ERXEqualConditional during formatting
    >> // ... and I don't want to give up BBEdit formatting until
    >> we have a HTML Format command built into the WOLips component editor
    >> WOHelperFunctionHTMLTemplateParser.registerTagShortcut
    >> ("ERXEqualConditional", "erxequalconditional");
    >>
    >>
    >>
    >>
    >> On May 14, 2007, at 12:26 PM, Kieran Kelleher wrote:
    >>
    >>> OK, I was using BBEdit Utilities Format command successfully to
    >>> clean up WO HTML. One aspect of the BbEdit Format command is that
    >>> it converts the HTML to lowercase which is great, however if you
    >>> are using inline class tags suchas as this:
    >>> <wo:ERXEqualConditional value1 =
    >>> "$vendorDataList.inheritanceType" value2 = "30">
    >>> <webobject name="SubmitButton1">
    >>> </webobject>
    >>> </wo:ERXEqualConditional>
    >>>
    >>> ... then BbEdit will convert it to this .......
    >>> <wo:erxequalconditional value1="$vendorDataList.inheritanceType"
    >>> value2="30">
    >>> <webobject name="SubmitButton1">
    >>> </webobject>
    >>> </wo:erxequalconditional>
    >>>
    >>> ... and then you get a class def not found form the WOHtmlParser
    >>> sth like below ....
    >>>
    >>> [2007-05-14 12:19:22 EDT] <6S05L8hoEPEtW37LCpIY50-
    >>> kieranWorkerThread4> java.lang.NoClassDefFoundError: er/
    >>> extensions/erxequalconditional (wrong name: er/extensions/
    >>> erxequalconditional)
    >>> at java.lang.ClassLoader.defineClass1(Native Method)
    >>> at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
    >>> at java.security.SecureClassLoader.defineClass
    >>> (SecureClassLoader.java:124)
    >>> at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    >>> at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    >>> at java.security.AccessController.doPrivileged(Native Method)
    >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
    >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    >>> at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    >>> at java.lang.Class.forName0(Native Method)
    >>> at java.lang.Class.forName(Class.java:164)
    >>> at
    >>> com.webobjects.foundation._NSUtilities._searchForClassInPackages
    >>> (_NSUtilities.java:374)
    >>> at com.webobjects.foundation._NSUtilities._classWithPartialName
    >>> (_NSUtilities.java:332)
    >>> at com.webobjects.foundation._NSUtilities.classWithName
    >>> (_NSUtilities.java:291)
    >>> at
    >>> com.webobjects.appserver._private.WOHTMLWebObjectTag._elementWithDec
    >>> laration(WOHTMLWebObjectTag.java:166)
    >>> at
    >>> com.webobjects.appserver._private.WOHTMLWebObjectTag.dynamicElement(
    >>> WOHTMLWebObjectTag.java:122)
    >>> at
    >>> ognl.helperfunction.WOHelperFunctionHTMLTemplateParser.didParseClosi
    >>> ngWebObjectTag(WOHelperFunctionHTMLTemplateParser.java:229)
    >>> at
    >>> ognl.helperfunction.WOHelperFunctionHTMLParser.didParseClosingWebObj
    >>> ectTag(WOHelperFunctionHTMLParser.java:277)
    >>> at
    >>> ognl.helperfunction.WOHelperFunctionHTMLParser.endOfWebObjectTag
    >>> (WOHelperFunctionHTMLParser.java:244)
    >>> at ognl.helperfunction.WOHelperFunctionHTMLParser.parseHTML
    >>> (WOHelperFunctionHTMLParser.java:102)
    >>> at
    >>> ognl.helperfunction.WOHelperFunctionHTMLTemplateParser.parseHTML
    >>> (WOHelperFunctionHTMLTemplateParser.java:253)
    >>> at ognl.helperfunction.WOHelperFunctionHTMLTemplateParser.parse
    >>> (WOHelperFunctionHTMLTemplateParser.java:269)
    >>> at
    >>> com.webobjects.appserver._private.WOParser.templateWithHTMLAndDeclar
    >>> ation(WOParser.java:71)
    >>> at
    >>> com.webobjects.appserver._private.WOComponentDefinition.template
    >>> (WOComponentDefinition.java:288)
    >>> at com.webobjects.appserver.WOComponent.templateWithName
    >>> (WOComponent.java:597)
    >>> at com.webobjects.appserver.WOComponent.template
    >>> (WOComponent.java:507)
    >>> at com.webobjects.appserver.WOComponent.appendToResponse
    >>> (WOComponent.java:982)
    >>> at wk.cheetah.WKComponent.appendToResponse(WKComponent.java:463)
    >>> at wk.cheetah.WKPageComponent.appendToResponse
    >>> (WKPageComponent.java:359)
    >>> at com.webobjects.appserver.WOSession.appendToResponse
    >>> (WOSession.java:1200)
    >>> at er.extensions.ERXSession.appendToResponse(ERXSession.java:529)
    >>> at wk.cheetah.Session.appendToResponse(Session.java:529)
    >>> at com.webobjects.appserver.WOApplication.appendToResponse
    >>> (WOApplication.java:1418)
    >>> at er.extensions.ERXApplication.appendToResponse
    >>> (ERXApplication.java:1084)
    >>> at
    >>> com.webobjects.appserver._private.WOComponentRequestHandler._dispatc
    >>> hWithPreparedPage(WOComponentRequestHandler.java:230)
    >>> at
    >>> com.webobjects.appserver._private.WOComponentRequestHandler._dispatc
    >>> hWithPreparedSession(WOComponentRequestHandler.java:287)
    >>> at
    >>> com.webobjects.appserver._private.WOComponentRequestHandler._dispatc
    >>> hWithPreparedApplication(WOComponentRequestHandler.java:322)
    >>> at
    >>> com.webobjects.appserver._private.WOComponentRequestHandler._handleR
    >>> equest(WOComponentRequestHandler.java:358)
    >>> at
    >>> com.webobjects.appserver._private.WOComponentRequestHandler.handleRe
    >>> quest(WOComponentRequestHandler.java:432)
    >>> at com.webobjects.appserver.WOApplication.dispatchRequest
    >>> (WOApplication.java:1306)
    >>> at er.extensions.ERXApplication.dispatchRequest
    >>> (ERXApplication.java:1117)
    >>> at wk.cheetah.Application.dispatchRequest(Application.java:188)
    >>> at com.webobjects.appserver._private.WOWorkerThread.runOnce
    >>> (WOWorkerThread.java:173)
    >>> at com.webobjects.appserver._private.WOWorkerThread.run
    >>> (WOWorkerThread.java:254)
    >>> at java.lang.Thread.run(Thread.java:613)
    >>>
    >>>
    >>>
    >>>
    >>
    >



    This archive was generated by hypermail 2.0.0 : Mon May 14 2007 - 13:24:00 EDT