Hello mason-users, I am new to mason and sorta mostly new to perl as well. I wrote a perl script to get and return some things from a CLI program and that works. I am now having problems getting it to work with mason. I am sure the code could be WAY better, but I would appreciate some help nonetheless. The problem is in the code below. I have also included the error messages that get returned.
<%ARGS> $macAddr </%ARGS> <TD><B>MACADDR:<% $macAddr %></B></TD> %my %nops=('server' => '64.184.141.92','user' => 'username', 'password' => 'thePassword'); %my @ip_Info; %# Get the MAC Address from RT# %#my $macAddr="00:15:A2:78:9F:9B"; #to be pulled from RT %# remove ":" from MAC address so that we can use it in the Incognito CLI. There is probably a faster way to do this, but %# this works. %while($macAddr =~ m/:/){ $macAddr =~ s/://; $macAddr =~ tr/[A-Z]/[a-z]/; %} %# Get the Basic Modem information from Incognito # %my @ipInfo = `/opt/rt3/share/html/NoAuth/finger/ipcli -S xxx.xxx.xxx. 92 -N username -P thePassword list search lease remoteid $macAddr`; %# Print out the modem information from Incognito as a table %<table border=1><tr> %foreach my $ipdata (@ipInfo){ @splitIP=split(':',$ipdata); foreach my $splitdata (@splitIP){ if ($splitdata =~ "172" || $splitdata =~ "66" || $splitdata =~ "24" ||$splitdata =~ "10"){ <TD><A HREF=/finger/><% $splitdata %></A></TD> } else{ <TD><% $splitdata %></TD> } } </tr><tr> %} </table> %# Get the Internal IP of the Cable modem and return only the IP so we can use it in our next Incognito action %my $my_ip=$ipInfo[1]; %#my $length_my_ip = length ($my_ip); %$my_ip=substr($my_ip,12,15); %# Get SNMP information from the Cable Modem based on the Internal IP address %my @snmpInfo = `/opt/rt3/share/html/NoAuth/finger/ipcli -S 64.184.141.92 -N gevans -P 199xt53b show lease $my_ip`; %# Print a Table of all of the information that the SNMP query returns <TABLE border=1><tr> %foreach my $snmpdata (@snmpInfo){ %# #split the returned results so that we can create a table. We are splitting on ":" @splitInfo= split(':',$snmpdata,2); foreach my $snmpsplitdata (@splitInfo){ %# # Certain information should be on the right side of the table and not the left. %# # Check to see if it is this information and move it one cell to the right. if ($snmpsplitdata =~ "Record Added"){ <TD></TD><TD><% $snmpsplitdata %></TD> } %# # %# # Some sections that are returned contain up to 4 items and we have to define each one and plan for it %# # separately. There is probably an easier way to do this, but we will create an elseif for each case %# # for now. If we learn how to do it better later we will fix it. %# # %# # %# #Put the in the correct column else{ <TD><% $snmpsplitdata %></TD> } } </tr><tr> %} </table> --end mason file Error: error: Error during compilation of /opt/rt3/share/html/NoAuth/finger/ m_incognito: String found where operator expected at /opt/rt3/share/html/NoAuth/ finger/m_incognito line 36, near "$m->print( $m->interp- >apply_escapes( (join '', ( $splitdata )), '" (Missing operator before ', ( $splitdata )), '?) Bad name after h' at /opt/rt3/share/html/NoAuth/finger/m_incognito line 36. Stack: [/opt/rt3/share/html/NoAuth/finger/m_incognito:36] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm:811] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm:441] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm:245] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm:210] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:97] [/usr/lib/perl5/site_perl/5.8.8/Class/Container.pm:275] [/usr/lib/perl5/site_perl/5.8.8/Class/Container.pm:353] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm:348] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:868] [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:822] [/opt/rt3/bin/webmux.pl:125] [/opt/rt3/share/html/NoAuth/finger/m_incognito:36] context: ... 32: foreach my $splitdata (@splitIP){ 33: if ($splitdata =~ "172" || $splitdata =~ "66" || $splitdata =~ "24" ||$splitdata =~ "10"){ 34: <TD><A HREF=/finger/><% $splitdata %></A></TD> 35: } 36: else{ 37: <TD><% $splitdata %></TD> 38: } 39: } 40: </tr><tr> ... code stack: /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm:445 /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm:245 /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm:210 /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:97 /usr/lib/perl5/site_perl/5.8.8/Class/Container.pm:275 /usr/lib/perl5/site_perl/5.8.8/Class/Container.pm:353 /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm:348 /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:868 /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:822 /opt/rt3/bin/webmux.pl:125 -e:0 ---RAW Error--- Trace begun at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm line 845 HTML ::Mason ::Interp::_compilation_error('HTML::Mason::Interp=HASH(0x90e9bf0)', '/ opt/rt3/share/html/NoAuth/finger/m_incognito', 'Error during compilation of :^JString found where operator expected at /opt/rt3/ share/html/NoAuth/finger/m_incognito line 36, near "$m->print( $m- >interp->apply_escapes( (join \'\', ( $splitdata )), \'"^J^I(Missing operator before \', ( $splitdata )), \'?)^JBad name after h\' at /opt/ rt3/share/html/NoAuth/finger/m_incognito line 36.^J^JStack:^J [/opt/ rt3/share/html/NoAuth/finger/m_incognito:36]^J [/usr/lib/perl5/ site_perl/5.8.8/HTML/Mason/Interp.pm:811]^J [/usr/lib/perl5/site_perl/ 5.8.8/HTML/Mason/Interp.pm:441]^J [/usr/lib/perl5/site_perl/5.8.8/ HTML/Mason/Request.pm:245]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/ Mason/Request.pm:210]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm:97]^J [/usr/lib/perl5/site_perl/5.8.8/Class/ Container.pm:275]^J [/usr/lib/perl5/site_perl/5.8.8/Class/ Container.pm:353]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ Interp.pm:348]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm:868]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm:822]^J [/opt/rt3/bin/webmux.pl:125]^J [/opt/rt3/ share/html/NoAuth/finger/m_incognito:36]^J^J^JStack:^J [/usr/lib/ perl5/site_perl/5.8.8/HTML/Mason/Interp.pm:441]^J [/usr/lib/perl5/ site_perl/5.8.8/HTML/Mason/Request.pm:245]^J [/usr/lib/perl5/ site_perl/5.8.8/HTML/Mason/Request.pm:210]^J [/usr/lib/perl5/ site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:97]^J [/usr/lib/perl5/ site_perl/5.8.8/Class/Container.pm:275]^J [/usr/lib/perl5/site_perl/ 5.8.8/Class/Container.pm:353]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/ Mason/Interp.pm:348]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm:868]^J [/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm:822]^J [/opt/rt3/bin/webmux.pl:125]^J [-e:0]^J') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Interp.pm line 445 HTML::Mason::Interp::load('HTML::Mason::Interp=HASH(0x90e9bf0)', '/ NoAuth/finger/m_incognito') called at /usr/lib/perl5/site_perl/5.8.8/ HTML/Mason/Request.pm line 245 eval {...} at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 230 HTML ::Mason ::Request ::_initialize('HTML::Mason::Request::ApacheHandler=HASH(0xa451f74)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 210 HTML::Mason::Request::new('HTML::Mason::Request::ApacheHandler', 'error_mode', 'output', 'autoflush', 0, 'error_format', 'html', 'interp', 'HTML::Mason::Interp=HASH(0x90e9bf0)', 'comp', '/NoAuth/ finger/m_incognito', 'args', 'ARRAY(0xa44e594)', 'ah', 'HTML::Mason::ApacheHandler=HASH(0x968961c)', 'apache_req', 'Apache2::RequestRec=SCALAR(0xa480e3c)', 'container', 'HASH(0xa458bec)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm line 97 HTML ::Mason ::Request::ApacheHandler::new('HTML::Mason::Request::ApacheHandler', 'error_mode', 'output', 'autoflush', 0, 'error_format', 'html', 'interp', 'HTML::Mason::Interp=HASH(0x90e9bf0)', 'comp', '/NoAuth/ finger/m_incognito', 'args', 'ARRAY(0xa44e594)', 'ah', 'HTML::Mason::ApacheHandler=HASH(0x968961c)', 'apache_req', 'Apache2::RequestRec=SCALAR(0xa480e3c)', 'container', 'HASH(0xa458bec)') called at /usr/lib/perl5/site_perl/5.8.8/Class/ Container.pm line 275 Class::Container::call_method('HTML::Mason::Interp=HASH(0x90e9bf0)', 'request', 'new', 'interp', 'HTML::Mason::Interp=HASH(0x90e9bf0)', 'comp', '/NoAuth/finger/m_incognito', 'args', 'ARRAY(0xa44e594)', 'ah', 'HTML::Mason::ApacheHandler=HASH(0x968961c)', 'apache_req', 'Apache2::RequestRec=SCALAR(0xa480e3c)', 'container', 'HASH(0xa458bec)') called at /usr/lib/perl5/site_perl/5.8.8/Class/ Container.pm line 353 Class::Container::create_delayed_object('interp', 'HTML::Mason::Interp=HASH(0x90e9bf0)', 'comp', '/NoAuth/finger/ m_incognito', 'args', 'ARRAY(0xa44e594)', 'ah', 'HTML::Mason::ApacheHandler=HASH(0x968961c)', 'apache_req', 'Apache2::RequestRec=SCALAR(0xa480e3c)', 'container', 'HASH(0xa458bec)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ Interp.pm line 348 HTML ::Mason::Interp::make_request('HTML::Mason::Interp=HASH(0x90e9bf0)', 'comp', '/NoAuth/finger/m_incognito', 'args', 'ARRAY(0xa44e594)', 'ah', 'HTML::Mason::ApacheHandler=HASH(0x968961c)', 'apache_req', 'Apache2::RequestRec=SCALAR(0xa480e3c)') called at /usr/lib/perl5/ site_perl/5.8.8/HTML/Mason/ApacheHandler.pm line 868 eval {...} at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ ApacheHandler.pm line 867 HTML ::Mason ::ApacheHandler ::prepare_request('HTML::Mason::ApacheHandler=HASH(0x968961c)', 'Apache2::RequestRec=SCALAR(0xa480e3c)') called at /usr/lib/perl5/ site_perl/5.8.8/HTML/Mason/ApacheHandler.pm line 822 HTML ::Mason ::ApacheHandler ::handle_request('HTML::Mason::ApacheHandler=HASH(0x968961c)', 'Apache2::RequestRec=SCALAR(0xa480e3c)') called at /opt/rt3/bin/ webmux.pl line 125 eval {...} at /opt/rt3/bin/webmux.pl line 125 RT::Mason::handler('Apache2::RequestRec=SCALAR(0xa480e3c)') called at - e line 0 eval {...} at -e line 0 Thanks in advance for any help :) Regards, Greg Evans Hood Canal Communications (360) 898-2481 ext.212 ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ Mason-users mailing list Mason-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mason-users