You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@velocity.apache.org by bu...@apache.org on 2002/05/02 01:24:17 UTC

DO NOT REPLY [Bug 8716] New: - False positive error condition parsing VM_global_library.vm

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8716>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=8716

False positive error condition parsing VM_global_library.vm

           Summary: False positive error condition parsing
                    VM_global_library.vm
           Product: Velocity
           Version: 1.0-Release
          Platform: Other
        OS/Version: Linux
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Source
        AssignedTo: velocity-dev@jakarta.apache.org
        ReportedBy: dlr@finemaltcoding.com
                CC: leonardr@collab.net


This bug is actually against 1.3 RC1, but there is no Version listing for that
in the Bugzilla config.

The initial parsing of the global Velocimacro library is incorrectly indicating
an error when context variables which are not passed in as arguments to a macro
are used when calling one macro within the body of another.  Confusing, eh?  I
assume that this could be worked around by putting double quotes around the
supposedly non-existent arguments to the invoked macro, but was wondering if
this was a bug.  Included is a sample problem case and some log output.

>From VM_global_library.vm:

#macro(linkedLoginName $acl $user)
 #linkIf($user.isEditableBy($acl) $currentDomain.getProjectPageURL("UserEdit",
"userID=$user.getID()") $user.getLoginName()) 
#end

#macro(linkIf $condition $link $text)
 #if ($condition) <a href="$link">$text</a> #else $text #end
#end

>From velocity.log:

2002-05-01 15:04:28,496 - Velocimacro : added new VM : #enterHelp( filename
linktext ) : source = VM_global_library.vm
2002-05-01 15:04:28,843 - VM #linkIf: error : too few arguments to macro. Wanted
3 got 0
2002-05-01 15:04:28,847 - VM #servletLink: error : too few arguments to macro.
Wanted 2 got 0
2002-05-01 15:04:28,848 - VM #servletLink: error : too few arguments to macro.
Wanted 2 got 0
2002-05-01 15:04:28,849 - VM #servletLink: error : too few arguments to macro.
Wanted 2 got 0
2002-05-01 15:04:28,857 - VM #displayProjectTreeAsOptions: error : too few
arguments to macro. Wanted 4 got 0
2002-05-01 15:04:28,907 - VM #selectYear: error : too few arguments to macro.
Wanted 2 got 0
2002-05-01 15:04:28,907 - VM #selectMonth: error : too few arguments to macro.
Wanted 1 got 0
2002-05-01 15:04:28,908 - VM #selectDay: error : too few arguments to macro.
Wanted 1 got 0
2002-05-01 15:04:29,109 - ResourceManager : found VM_global_library.vm with
loader org.apache.velocity.runtime.resource.loader.FileResourceLoader
2002-05-01 15:04:29,113 - Velocimacro :  VM library template macro registration
complete.
2002-05-01 15:04:29,113 - Velocimacro : allowInline = true : VMs can be defined
inline in templates

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>