Jsp-debugging: breakpoints wont work!

hi,
i am trying to enable jsp-debugging with eclipse 3, lomboz 3.0.0 and tomcat 5.5.4 (both working
as an eclipse plugin).
What happens so far is:
i write an jsp using lomboz, the jsp is converted to a servlet and stored / copied to a folder
called j2src in the eclipse workspace (the folder j2src is created by lomboz).
if i now call the url http://localhost:8080/mywebmodule/jsptest.jsp the jsp is executed faultless
and in the j2src-folder the corresponding class file appears.
so, everything works fine, the problem that i now have, is that i can set breakpoints for debugging
purposes in eclipse in the generated servlet-file under j2src, but this breakpoints are simply ignored, which means the
servlet is fully executed regardless of where i set the breakpoints, and i really dont get it why, since
my tomcat works completely in the eclipse workspace.
do i have to configure the tomcat to enable jsp-debugging?
i thought i had already done so, here is my deployment descriptor:
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="E:\development\tutorial\eclipse_3\eclipse\workspace\testproject2\testmodulezwei" path="/testmodule" reloadable="true" workDir="E:\development\tutorial\eclipse_3\eclipse\workspace\testproject2\j2src" debug="0"/>
here is what i inserted into the web.xml (in the conf-directory):
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>classdebuginfo</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
any ideas / suggestions?.......i am out of ideas right now....
thx in advance, timo

If you're using a debugger in a JSP or servlet, I'd say you're really in trouble.
I never use a debugger like that for servlets or JSPs. If I have problems I depend on the logger to help me out. Just log statements until you narrow the problem down.
This might be "clumsy", but it works even in those cases where you don't have a debugger available (like on a client's installation site).
If your servlet or JSP is doing so much stuff that you have to debug, I'd say they're both doing too much. JSPs are for display; servlets for control. Complex business logic belongs in POJOs that you can debug or EJBs.
Maybe you should rethink your design.
%

Similar Messages

  • OC4J JSP Debugging not working for all the jsps

    Hi,
    Initially I was not able to debug jsps using Eclipse and OC4J. The jsp debugging started working once I made the below changes:
    1) global-web-application.xml is modified
    Changed the attribute development="true" in orion-web-app
    Added the below init param for the JspServlet
    <init-param>
    <param-name>debug</param-name>
    <param-value>class</param-value>
    </init-param>
    If the jsps are present in a sub directory under the webcontent none of the breakpoints are working. I am still be able to view the jsp pages on the browser.
    Tools: Oracle 10g Application Server Standalone version(10.1.3.5.0), JDK5, Windows XP, Eclipse Indigo
    Project Structure:
    Test (Eclipse Dynamic Web Project)
    -WebContent
    Sample.jsp ( Breakpoints are working)
    -subF (Folder)
    SubSample.jsp (Breakpoints are not working)
    -WEB-INF
    web.xml
    Debugging worked for http://localhost:8888/Test/Sample.jsp
    Debugging not working for http://localhost:8888/Test/subF/SubSample.jsp
    Any help is highly appreciated.
    Regards
    Danny

    This tells there is not enough main memory (not disk space) for the program to run.
    - You can look the dump in ST22, it will have suggestions on increasing the ROLLAREA??, you can forward that to Basis.
    - Most likely you will not have any more memory to assign so the above may not be feasible. Try to rework your query so it works with less data.

  • Can't get JSP debugging to work with WebLogic 6.0 and Eclipse 2.1.1

    Is native JSP debugging supported in WebLogic 6.0? If so, what are
              the steps involved in getting it to work? I'm in debug mode and my
              servlets will catch at my breakpoints but the JSP pages' breakpoints
              are ignored. I am using compliance level 1.3 and a JRE 1.3. I tried
              to start WebLogic with the 1.4.2 JRE but I get an exception error on
              the WLS JDK name" field. What am I missing here?
              Thanks!
              

    I appear to have solved it, but it is not clear to me why.
    I created a jar file of the required classes, and placed it in the same directory as the jsp file. My jsp code then looked like:
    <jsp:plugin type="applet" code="nz.astarte.ganttapplet.GanttApplet"
    codebase="."
    archive="GanttApplet.jar"
    jreversion="1.3.1"
    width="400" height="175">
    <jsp:fallback>
    Plugin support could not be determined
    </jsp:fallback>
    </jsp:plugin>
    This works fine. However I would expect to be able to move the jar file to some other directory, so that the jar file and jsp files are separated. I spent hours trying to work out why it wouldn't work when I had the jar
    file in WEB-INF/classes (under the jsp file directory) and had codebase="WEB-INF/classes/". In the end I put the jar file into a directory I defined separately called wotnot and defined codebase="wotnot/"
    Now it works. However I still think I should be able to have the jar file anywhere, including WEB-INF/classes and would love for someone to tell me why not!
    Thanks, Andrew

  • Upload file jsp code doesn't work? How can I debug

    Hi Everyone,
    I have the following jsp code that simply adds a new product to the backend database when 'Continue' button is pressed.
    if( "Continue".equals(fp.getParameter("Submit")) ) {
         fp.setParameters(prodForm);
         prodForm.setCreateBy(currentUser.getUserID());
         prodForm.save();
         String filename = fp.getFilename("file");
              if( filename != null ) {
              // a file was uploaded
              // set the path to save it
              fp.setFilePath(PHYSICAL_PATH + "uploads\\");
              // we will change the filename to make sure it is unique
              // need to keep the file type
              String fileType = "";
              try { fileType = filename.substring( filename.lastIndexOf(".") ).toLowerCase(); }
              catch( Exception e ) { fileType = ""; }
              fp.saveFile("file", "POS_" + prodForm.getProductID() + fileType);
              prodForm.setSketch("POS_" + prodForm.getProductID() + fileType);
              prodForm.save();
         db.close();
         response.sendRedirect("index.jsp");
         return;
    }The code works fine but the upload doesn't work. This is the upload part of the above code:
    String filename = fp.getFilename("file");
              if( filename != null ) {
              // a file was uploaded
              // set the path to save it
              fp.setFilePath(PHYSICAL_PATH + "uploads\\");
              // we will change the filename to make sure it is unique
              // need to keep the file type
              String fileType = "";
              try { fileType = filename.substring( filename.lastIndexOf(".") ).toLowerCase(); }
              catch( Exception e ) { fileType = ""; }
              fp.saveFile("file", "POS_" + prodForm.getProductID() + fileType);
              prodForm.setSketch("POS_" + prodForm.getProductID() + fileType);
              prodForm.save();
         db.close();
         response.sendRedirect("index.jsp");So if the file browser, <input type="file" name="file">, has a file, then it saves the file in the upload folder and saves the filename in the database. But it doesn't work, it doesn't save the file in the upload folder nor it saves the filename in the database. I am new to java and jsp so could you tell me what error checking or deguging I can do in jsp to spot the problem.
    Thanks,
    Zub

    where u write the code to upload the file
    to server end?

  • JSP Debugging

    Hi,
    I just downloaded the free Workshop for JSP. I installed it as a plugin into my current Eclipse 3.2 installation.
    Everything seems to work great. I can create a new web project and design JSPs using the jsp workshop editor with wysiwyg.
    My problem is that I can't debug my JSPs like I am supposed to be able to do with Workshop for JSP. I am able to set breakpoints in my jsp code, but it never stops at those breakpoints. However, I can debug my java classes without any problem, the debugger will stop in the classes, but not in the jsp.
    I'm running Weblogic 8.1 SP5 in standalone (not inside IDE) and I'm using remote debugging (socket attach) to attach the eclipse debugger to my wls. This setup works great with java classes, but I can't get it to stop into my jsp code. I tried several things, but I can't figure it out.
    As I said, my setup is quite simple:
    -Eclipse 3.2
    -Installed Workshop for jsp as a plugin
    -Running WLS 8.1 SP5 standalone with debug enabled
    -Created a very simple Dynamic web project with a simple jsp and a java class
    -Exported the project as a war file
    -Manually deployed the war file into standalone wls
    -Socket attach eclipse debugger to wls
    -Place breakpoints in jsp code and java class
    -Launch my jsp page in Internet Explorer
    -Will stop in java class but never in jsp code :(
    I tried using a normal domain and a workshop domain in wls, but neither worked. I also tried adding the following to the weblogic.xml of the war:
    <jsp-descriptor>
    <jsp-param>
    <param-name>compileFlags</param-name>
    <param-value>-g</param-value>
    </jsp-param>
    <jsp-param>
    <param-name>keepgenerated</param-name>
    <param-value>true</param-value>
    </jsp-param>
    </jsp-descriptor>
    but it didnt change anything.
    Right now, after a few hours of trying, I'm a bit lost and I dont have any ideas left, but I'd really like to get this jsp debugging thing working, so if anyone can help me out with this, any help will be greatly appreciated.
    Thanks
    Mat

    Hi,
    Its been a few days now and nobody helped me solve this problem. Does this mean I am the only one with this particular problem?
    My setup it quite simple and what I am trying to do is really straight forward, I just cant believe noone can help me out here. There must be something I am missing.
    Please, I really need this thing to work.
    Thanks again

  • MI debug stopped to work

    Hi all,
    During export of MI .war through Eclipse(NWDS) I choose to add JSPs as compiled classes and also to keep the generated java classes. Yeah, as SAP said this is useful for JSP debugging and I've tried it, it worked a while, but now - not. I cannot remember if I did something special, but now even if I put breakpoints in both the JSP file and the generated java file, the debugger do not go through it... Did anyone already observed this and how can I overcome this..?
    And another strange thing is that MI export of war changes the web.xml in some strange way, that I do not want to...
    Thanks,
    Lalo

    Hello Lalo,
    I don't use MDK for my own reason, but you just added one of yours...
    You can look at my blog entry on how not to use MDK.
    As for the second problem, web.xml, MDK will change this file if you have check compile JSP. It has to do that to create the redirection xml for tomcat.
    Julien.

  • Debugging is not working in R/3 from WebDynpro-ABAP developed webpage input

    Dear Friends,
    We are facing a serious problem for debugging. Expecting valuable input for the same.
    Debugging is not working in R/3 from WebDynpro-ABAP developed webpage input in Production Server.
    The debugging (for WebDynpro-ABAP application) is working in Dev. Server for
    1st ] Within R/3
    Ex. debug for bapi within R/3. i.e. value enter as input in R/3 only.
    2nd ] From webpage to R/3
    Ex. Some input given on the internet web page developed through WebDynpro and external breakpoint set in R/3 it works. It directs to R/3 code through debugging.
    In Prod. Server the 1st case above is working but the 2nd case is not working.
    In Prod. Server the WebDynpro developed applications are running successfully through internet explorer webpage inputs. So running the application is not a problem in prod. Server but debugging of the same is the problem.
    The setting which are done in Prod. server are,
    1] RZ10 in parameters are set for port and host name.
    2.1] In SMICM check for ICM.
    2.2] Host file updated in Windows-System 32.
    3] In SICF following services are active,
    3.1] default_host/sap/bc/webdynpro
    3.2] default_host/sap/public/bc
    3.3] default_host/sap/public/bc/webdynpro/viewdesigner
    3.4] default_host/sap/bc/wdvd
    3.5] default_host/sap/public/icman
    3.6] default_host/sap/bc/gui/sap/its/webgui
    3.7] default_host/sap/public/ping
    3.8] default_host/sap/bc/error
    3.9] default_host/sap/bc/echo
    4] In SE80
    4.1] Internet services-System-are published
    4.2] Internet services-WEBGUI-are published
    4.3] Utilities-Setting-ABAP Editor-Debugging-Username & New Debugger set.
    4.4] Utilities-Setting-ABAP Editor-Editor-Front-End Editor(New) set.
    5] In Su01 for user profiles sap_all & sap_new is assigned and role  SAP_BC_WEBSERVICE_DEBUGGER is assigned.
    6] The support packages are also updated to latest level.
    7] Gone through following links but not getting any clues.
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/48/74d50bd1431b5ae10000000a42189c/frameset.htm
    http://help.sap.com/saphelp_nw04s/helpdata/EN/77/3545415ea6f523e10000000a155106/frameset.htm
    Thanks in Advance.
    Best Regards,
    Abhijit.

    No cross posting
    Read the "Rules of Engagament"
    Regards
    Juan

  • Mail-form from dB Masters + reCaptcha - Things wont work the way i want.

    I used a mail-form from dB Masters because someone here gave me the tip.
    And its great! But it uses a simplefied Captcha script.
    I tryd to change the code myself and got to this: http://www.wientjesvoegwerk.nl/PHP/form.php
    If you try to send mail it wont work.....
    form.php
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Email Form</title>
    </head>
    <body>
    <center>
    <form id="form" method="post" action="../formmailer.php" enctype="multipart/form-data">
    <input type="hidden" name="action" value="verify">
    <table cellpadding="4">
    <tr><td  style="text-align: left;" valign=top><font size="2" FACE="Verdana" color="#000000">Uw naam:</font><small><span style="color:#E00000;" title="Required field">*</span></small></td><td align="left">
    <input type="text" name="Naam" value=""/>
    </td></tr>
    <tr><td  style="text-align: left;" valign=top><font size="2" FACE="Verdana" color="#000000">Email:</font><small><span style="color:#E00000;" title="Required field">*</span></small></td><td align="left">
    <input type="text" name="Email" value="" />
    </td></tr>
    <tr><td  style="text-align: left;" valign=top><font size="2" FACE="Verdana" color="#000000">Telefoonnummer:</font><small><span style="color:#E00000;" title="Required field">*</span></small></td><td align="left">
    <input type="text" name="Telefoonnummer" value="" />
    </td></tr>
    <tr><td  style="text-align: left;" valign=top><font size="2" FACE="Verdana" color="#000000">Onderwerp:</font><small><span style="color:#E00000;" title="Required field">*</span></small></td><td align="left">
    <select name="Onderwerp">
        <option value="0">Algemene Informatie</option>
        <option value="1">Offerte</option>
        <option value="2">Overige</option>
        </select>
    </td></tr>
    <tr><td  style="text-align: left;" valign=top><font size="2" FACE="Verdana" color="#000000">Bericht:</font><small><span style="color:#E00000;" title="Required field">*</span></small></td><td align="left">
    <textarea name="Bericht" rows="7" cols="40"></textarea>
    </td></tr>
    <tr><td align=right>CAPTCHA TXT</td>
    <td align="left">
    <form method="post" action="verify.php">
       <?php
         require_once('recaptchalib.php');
         $publickey = "I hide the key on this forum dont know if its ok to show";
         echo recaptcha_get_html($publickey);
       ?>
    </form>
    </td>
    </tr>
    <tr><td></td><td align="left">
    <input type="submit" name="submit" value="Submit" />
    <input type="reset" name="Reset" value="Clear Form" />
    <input type="hidden" name="config" value="0" />
    <input type="hidden" name="nospam" value="" />
    </td></tr>
    </table>
    <div style="height:1px; display: none; visibility: hidden;">
    <input type="text" name="email">
    </div>
    </form>
    </center>
    </body>
    </html>
    formmailer.php
    <?php
    // dB Masters' PHP FormM@iler, Copyright (c) 2007 dB Masters Multimedia
    // http://www.dbmasters.net/
    // FormMailer comes with ABSOLUTELY NO WARRANTY
    // Licensed under the AGPL
    // See license.txt and readme.txt for details
    // General Variables
         $check_referrer="no";
         $referring_domains="www.wientjesvoegwerk.nl";
    // options to use if hidden field "config" has a value of 0
    // recipient info
         $charset[0]="UTF-8";
         $tomail[0]="[email protected]";
         $cc_tomail[0]="";
         $bcc_tomail[0]="";
    // Mail contents config
         $subject[0]="Onderwerp van de Email";
         $reply_to_field[0]="Email";
         $reply_to_name[0]="Naam";
         $required_fields[0]="Naam,Email,Telefoonnummer,Onderwerp,Bericht";
         $required_email_fields[0]="Email";
         $attachment_fields[0]="";
         $return_ip[0]="yes";
         $mail_intro[0]="Er is een bericht gestuurd vanuit Wientjesvoegwerk.nl:";
         $mail_fields[0]="Naam,Email,Telefoonnummer,Onderwerp,Bericht";
         $mail_type[0]="text";
         $mail_priority[0]="1";
         $allow_html[0]="no";
    // Send back to sender config
         $send_copy[0]="yes";
         $copy_format[0]="vert_table";
         $copy_fields[0]="Naam,Onderwerp,Bericht";
         $copy_attachment_fields[0]="";
         $copy_subject[0]="Kopie van uw bericht naar Wientjesvoegwerk.nl";
         $copy_intro[0]="Dank u voor uw bericht!<br />Om veiligheidsredenen is uw email adres en telefoonnummer niet in deze mail te zien.<br /> Het volgende is verstuurd;";
         $copy_from[0]="[email protected]";
         $copy_tomail_field[0]="Email";
    // Result options
         $header[0]="";
         $footer[0]="";
         $error_page[0]="";
         $thanks_page[0]="";
    // Default Error and Success Page Variables
         $error_page_title[0]="Errors:";
         $error_page_text[0]="Ga a.u.b. terug naar de vorige pagina om alle benodigde velden in te vullen.";
         $thanks_page_title[0]="Bericht verzonden.";
         $thanks_page_text[0]="Dank u voor uw bericht!";
    // Antispam Options
         $empty_field[0]="nospam";
         $character_scan[0]="Bericht,Naam,Email,Telefoonnummer,Onderwerp";
         $time_delay[0]="2";
         $captcha_codes[0]="9C2449,EEADC8,77A585,D72838";
         $max_urls[0]="2";
         $max_url_fields[0]="Bericht";
         $flag_spam[0]="";
    // options to use if hidden field "config" has a value of 1
    // recipient info
         $charset[1]="";
         $tomail[1]="";
         $cc_tomail[1]="";
         $bcc_tomail[1]="";
    // Mail contents config
         $subject[1]="";
         $reply_to_field[1]="";
         $reply_to_name[1]="";
         $required_fields[1]="";
         $required_email_fields[1]="";
         $attachment_fields[1]="";
         $return_ip[1]="";
         $mail_intro[1]="";
         $mail_fields[1]="";
         $mail_type[1]="";
         $mail_priority[1]="";
         $allow_html[1]="";
    // Send back to sender config
         $send_copy[1]="";
         $copy_format[1]="";
         $copy_fields[1]="";
         $copy_attachment_fields[1]="";
         $copy_subject[1]="";
         $copy_intro[1]="";
         $copy_from[1]="";
         $copy_tomail_field[1]="";
    // Result options
         $header[1]="";
         $footer[1]="";
         $error_page[1]="";
         $thanks_page[1]="";
    // Default Error and Success Page Variables
         $error_page_title[1]="";
         $error_page_text[1]="";
         $thanks_page_title[1]="";
         $thanks_page_text[1]="";
    // Antispam Options
         $empty_field[1]="bait";
         $character_scan[1]="Naam,Email,Telefoonnummer,Onderwerp,Bericht";
         $time_delay[1]="";
         $captcha_codes[1]="";
         $max_urls[1]="";
         $max_url_fields[1]="";
         $flag_spam[1]="";
    // Don't muck around past this line unless you know what you are doing //
    ob_start();
    $config=$_POST["config"];
    $debug=0;
    $debug_text="";
    // fix for Windows email server security
    ini_set("sendmail_from",$tomail[$config]);
    // email validation regular expression
    $regex = "^[-a-z0-9!#$%&\'*+/=?^_`{|}~]+(\.[-a-z0-9!#$%&\'*+/=?^_`{|}~]+)*@(([a-z0-9]([-a-z0-9]*[a-z0-9]+)?){1,63}\.)+([a-z]([-a-z0-9]*[a-z0-9]+)?){2,63}$";
    $header_injection_regex = "(\r|\n)";
    if($header[$config]!="")
         include($header[$config]);
    if($_POST["submit"] || $_POST["Submit"] || $_POST["submit_x"] || $_POST["Submit_x"])
    // begin global functions //
    // get visitor IP
         function getIP()
              if(getenv(HTTP_X_FORWARDED_FOR))
                   $user_ip=getenv("HTTP_X_FORWARDED_FOR");
              else
                   $user_ip=getenv("REMOTE_ADDR");
              return $user_ip;
    // get value of given key
         function parseArray($key)
              $arrayvalue=$_POST[$key];
              $count=1;
              extract($array_value);
              foreach($array_value as $part_value)
                   if($count > 1){$value.=", ";}
                   $value.=$part_value;
                   $count=$count+1;
              return $value;
    // stripslashes and autolink url's
         function parseValue($value)
              $value=preg_replace("/(http:\/\/+.[^\s]+)/i",'<a href="\\1">\\1</a>', $value);
              return $value;
    // html header if used
         function htmlHeader()
              $htmlHeader="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\">\n<html>\n<head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=".$charset[$config]."\"></head>\n<body>\n<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\" width=\"600\">\n";
              return $htmlHeader;
    // html footer if used
         function htmlFooter()
              $htmlFooter="</table>\n</body>\n</html>\n";
              return $htmlFooter;
    // build verticle table format
         function buildVertTable($fields, $intro, $to, $send_ip)
              $message=htmlHeader();
              if($intro != "")
                   $message.="<tr>\n<td align=\"left\" valign=\"top\" colspan=\"2\">".$intro."</td>\n</tr>\n";
              $fields_check=preg_split('/,/',$fields);
              $run=sizeof($fields_check);
              for($i=0;$i<$run;$i++)
                   $cur_key=$fields_check[$i];
                   $curvalue=$_POST[$cur_key];
                   if(is_array($cur_value))
                        $curvalue=parseArray($cur_key);
                   $curvalue=parseValue($cur_value);
                   if($allow_html[$config]=="no")
                        $curvalue=htmlspecialchars(nl2br($cur_value));
                   else
                        $curvalue=nl2br($cur_value);
                   $message.="<tr>\n<td align=\"left\" valign=\"top\" style=\"white-space:nowrap;\"><b>".$cur_key."</b></td>\n<td align=\"left\" valign=\"top\" width=\"100%\">".$cur_value."</td>\n</tr>\n";
              if($send_ip=="yes" && $to=="recipient")
                   $user_ip=getIP();
                   $message.="<tr>\n<td align=\"left\" valign=\"top\" style=\"white-space:nowrap;\"><b>Sender IP</b></td>\n<td align=\"left\" valign=\"top\" width=\"100%\">".$user_ip."</td>\n</tr>\n";
              $message.=htmlFooter();
              return $message;
    // build horizontal table format
         function buildHorzTable($fields, $intro, $to, $send_ip)
              $message=htmlHeader();
              $fields_check=preg_split('/,/',$fields);
              $run=sizeof($fields_check);
              if($intro != "")
                   $message.="<tr>\n<td align=\"left\" valign=\"top\" colspan=\"".$run."\">".$intro."</td>\n</tr>\n";
              $message.="<tr>\n";
              for($i=0;$i<$run;$i++)
                   $cur_key=$fields_check[$i];
                   $message.="<td align=\"left\" valign=\"top\" style=\"white-space:nowrap;\"><b>".$cur_key."</b></td>\n";
              if($send_ip=="yes" && $to=="recipient")
                   $message.="<td align=\"left\" valign=\"top\" style=\"white-space:nowrap;\"><b>Sender IP</b></td>\n";
              $message.="</tr>\n";
              $message.="<tr>\n";
              for($i=0;$i<$run;$i++)
                   $cur_key=$fields_check[$i];
                   $curvalue=$_POST[$cur_key];
                   if(is_array($cur_value))
                        $curvalue=parseArray($cur_key);
                   $curvalue=parseValue($cur_value);
                   if($allow_html[$config]=="no")
                        $curvalue=htmlspecialchars(nl2br($cur_value));
                   else
                        $curvalue=nl2br($cur_value);
                   $message.="<td align=\"left\" valign=\"top\">".$cur_value."</td>\n";
              $message.="</tr>\n";
              $message.="<tr>\n";
              if($send_ip=="yes" && $to=="recipient")
                   $user_ip=getIP();
                   $message.="<td align=\"left\" valign=\"top\">".$user_ip."</td>\n";
              $message.="</tr>\n";
              $message.=htmlFooter();
              return $message;
    // build plain text format
         function buildTextTable($fields, $intro, $to, $send_ip)
              $message="";
              if($intro != "")
                   $message.=$intro."\n\n";
              $fields_check=preg_split('/,/',$fields);
              $run=sizeof($fields_check);
              for($i=0;$i<$run;$i++)
                   $cur_key=$fields_check[$i];
                   $curvalue=$_POST[$cur_key];
                   if(is_array($cur_value))
                        $curvalue=parseArray($cur_key);
                   $curvalue=parseValue($cur_value);
                   if($allow_html[$config]=="no")
                        $curvalue=htmlspecialchars($cur_value);
                   else
                        $curvalue=$cur_value;
                   $message.="".$cur_key.": ".$cur_value."\n";
              if($send_ip=="yes" && $to=="recipient")
                   $user_ip=getIP();
                   $message.="Sender IP: ".$user_ip."\n";
              return $message;
    // get the proper build fonction
         function buildTable($format, $fields, $intro, $to, $send_ip)
              if($format=="vert_table")
                   $message=buildVertTable($fields, $intro, $to, $send_ip);
              else if($format=="horz_table")
                   $message=buildHorzTable($fields, $intro, $to, $send_ip);
              else
                   $message=buildTextTable($fields, $intro, $to, $send_ip);
              return $message;
    // referrer checking security option
         function checkReferer()
              if($check_referrer=="yes")
                   $ref_check=preg_split('/,/',$referring_domains);
                   $ref_run=sizeof($ref_check);
                   $referer=$_SERVER['HTTP_REFERER'];
                   $domain_chk="no";
                   for($i=0;$i<$ref_run;$i++)
                        $cur_domain=$ref_check[$i];
                        if(stristr($referer,$cur_domain)){$domain_chk="yes";}
              else
                   $domain_chk="yes";
              return $domain_chk;
    // checking required fields and email fields
         function checkFields($text_fields, $email_fields, $regex)
               $error_message="";
              if($debug==1)
                   $error_message.="<li>text_fields: ".$text_fields."<br />email_fields: ".$email_fields."<br />reply_to_field: ".$reply_to_field."<br />reply_to_name: ".reply_to_name."</li>";
              if($text_fields != "")
                   $req_check=preg_split('/,/',$text_fields);
                   $req_run=sizeof($req_check);
                   for($i=0;$i<$req_run;$i++)
                        $cur_field_name=$req_check[$i];
                        $cur_field=$_POST[$cur_field_name];
                        if($cur_field=="")
                             $error_message.="<li>You are missing the <b>".$req_check[$i]."</b> field</li>\n";
              if($email_fields != "")
                   $email_check=preg_split('/,/',$email_fields);
                   $email_run=sizeof($email_check);
                   for($i=0;$i<$email_run;$i++)
                        $cur_email_name=$email_check[$i];
                        $cur_email=$_POST[$cur_email_name];
                        if($cur_email=="" || !eregi($regex, $cur_email))
                             $error_message.="<li>You are missing the <b>".$email_check[$i]."</b> field or it is not a valid email address.</li>\n";
              return $error_message;
    // attachment function
         function getAttachments($attachment_fields, $message, $content_type, $border)
              $att_message="This is a multi-part message in MIME format.\r\n";
              $att_message.="--{$border}\r\n";
              $att_message.=$content_type."\r\n";
              $att_message.="Content-Transfer-Encoding: 7bit\r\n\r\n";
              $att_message.=$message."\r\n\r\n";
              $att_check=preg_split('/,/',$attachment_fields);
              $att_run=sizeof($att_check);
              for($i=0;$i<$att_run;$i++)
                   $fileatt=$_FILES[$att_check[$i]]['tmp_name'];
                   $fileatt_name=$_FILES[$att_check[$i]]['name'];
                   $fileatt_type=$_FILES[$att_check[$i]]['type'];
                   if (is_uploaded_file($fileatt))
                        $file=fopen($fileatt,'rb');
                        $data=fread($file,filesize($fileatt));
                        fclose($file);
                        $data=chunk_split(base64_encode($data));
                        $att_message.="--{$border}\n";
                        $att_message.="Content-Type: {$fileatt_type}; name=\"{$fileatt_name}\"\r\n";
                        $att_message.="Content-Disposition: attachment; filename=\"{$fileatt_name}\"\r\n";
                        $att_message.="Content-Transfer-Encoding: base64\r\n\r\n".$data."\r\n\r\n";
              $att_message.="--{$border}--\n";
              return $att_message;
    // function to set content type
         function contentType($charset, $format)
              if($format=="vert_table")
                   $content_type="Content-type: text/html; charset=".$charset."\r\n";
              else if($format=="horz_table")
                   $content_type="Content-type: text/html; charset=".$charset."\r\n";
              else
                   $content_type="Content-type: text/plain; charset=".$charset."\r\n";
              return $content_type;
    // end global functions //
    // begin procedural scripting //
         // anti-spam empty field check
         if($_POST[$empty_field[$config]] != "")
              $empty_message = "<li>This submission failed and was flagged as spam.</li>\n";
         // anti-spam character scan check
         if(strlen($character_scan[$config]) > 0)
              $spam_message="";
              $field_check=preg_split('/,/',$character_scan[$config]);
              $field_run=sizeof($field_check);
              for($i=0;$i<$field_run;$i++)
                   $cur_field_name=$field_check[$i];
                   $cur_field=$_POST[$cur_field_name];
                   if(preg_match("/<(.|\n)+?>/", $cur_field) || preg_match("/\[(.|\n)+?\]/", $cur_field))
                        $spam_message.="<li>This message contains disallowed characters.</li>\n";
         // anti-spam time delay check
         if((strlen($time_delay[$config]) > 0 && strlen($_POST["time"]) > 0) || (strlen($time_delay[$config]) > 0 && (strlen($_POST["time"]) == 0 || !$_POST["time"])))
              if((time() - $_POST["time"]) < $time_delay[$config])
                   $time_message = "<li>This has been stopped by the timer, and is likely spam.</li>\n";
         // anti-spam CAPTCHA check
         if(strlen($captcha_codes[$config]) > 0)
              $captcha_check=preg_split('/,/',$captcha_codes[$config]);
              if(strtolower($_POST["captcha_entry"]) != strtolower($captcha_check[$_POST["captcha_code"]]))
                   $captcha_message = "<li>CAPTCHA test did not match.</li>\n";
         // anti-spam max URL check
         if(strlen($max_url_fields[$config]) > 0)
              $max_url_message="";
              $field_check=preg_split('/,/',$max_url_fields[$config]);
              $field_run=sizeof($field_check);
              for($i=0;$i<$field_run;$i++)
                   $cur_field_name=$field_check[$i];
                   $cur_field=$_POST[$cur_field_name];
                   preg_match_all("/http:/", $cur_field, $matches);
                   if(count($matches[0]) > $max_urls[$config])
                        $max_url_message.="<li>This message contains too many URL's.</li>\n";
         // set anti-spam flagging option
         if(strlen($empty_message.$spam_message.$time_message.$captcha_message.$max_url_message) > 0 && strlen($flag_spam[$config]) == 0)
              $set_flag = 2;
         else if(strlen($empty_message.$spam_message.$time_message.$captcha_message.$max_url_message) > 0 && strlen($flag_spam[$config]) > 0)
              $set_flag = 1;
         else
              $set_flag = 0;
         // header injection check
            $security_filter="";
         if(strlen($_POST[$reply_to_field[$config]]) > 0)
              if(eregi($header_injection_regex,$_POST[$reply_to_field[$config]]))
                   $security_filter.="<li>Header injection attempt detected, mail aborted.</li>\n";
              else
                   $reply_to_field_checked=$_POST[$reply_to_field[$config]];
         if(strlen($_POST[$reply_to_name[$config]]) > 0)
              if(eregi($header_injection_regex,$_POST[$reply_to_name[$config]]))
                   $security_filter.="<li>Header injection attempt detected, mail aborted.</li>\n";
              else
                   $reply_to_name_checked=$_POST[$reply_to_name[$config]];
         // check domain referrer and continue
         $domain_chk=checkReferer();
         if($domain_chk=="yes")
              $error_message=checkFields($required_fields[$config], $required_email_fields[$config], $regex);
              if(strlen($error_message) < 1 && strlen($security_filter) < 1 && $set_flag < 2)
                   // build appropriate message format for recipient
                   $content_type=contentType($charset[$config], $mail_type[$config]);
                   $message=buildTable($mail_type[$config], $mail_fields[$config], $mail_intro[$config], "recipient", $return_ip[$config]);
                   // build header data for recipient message
                   //$extra="From: ".$_POST[$reply_to_field[$config]]."\r\n";
                   $extra="From: ".$reply_to_name_checked." <".$reply_to_field_checked.">\r\n";
                   if($cc_tomail[$config]!="")
                        $extra.="Cc: ".$cc_tomail[$config]."\r\n";
                   if($bcc_tomail[$config]!="")
                        $extra.="Bcc: ".$bcc_tomail[$config]."\r\n";
                   if($mail_priority[$config]!="")
                        $extra.="X-Priority: ".$mail_priority[$config]."\r\n";
                   // get attachments if necessary
                   if($attachment_fields[$config]!="")
                        $semi_rand=md5(time());
                        $border="==Multipart_Boundary_x{$semi_rand}x";
                        $extra.="MIME-Version: 1.0\r\n";
                        $extra.="Content-Type: multipart/mixed; boundary=\"{$border}\"";
                        $message=getAttachments($attachment_fields[$config], $message, $content_type, $border);
                   else
                        $extra.="MIME-Version: 1.0\r\n".$content_type;
                   // send recipient email
                   if($debug==1)
                        if($set_flag == 1)
                             $debug_text.="<p><b>Mail would have sent flagged for spam if not in debug mode.</b></p>";
                        else
                             $debug_text.="<p><b>Mail would have sent if not in debug mode.</b></p>";
                   else if($debug==0)
                        if($set_flag == 1)
                             $subject = $flag_spam[$config]." ".$subject[$config];
                        else
                             $subject = $subject[$config];
                        mail("".$tomail[$config]."", "".stripslashes($subject)."", "".stripslashes($message)."", "".$extra."");
                   // autoresponse email if necessary
                   if($send_copy[$config]=="yes")
                        // build appropriate message format for autoresponse
                        $content_type=contentType($charset[$config], $copy_format[$config]);
                        $message=buildTable($copy_format[$config], $copy_fields[$config], $copy_intro[$config], "autoresponder", $return_ip[$config]);
                        // build header data for autoresponse
                        $copy_tomail=$_POST[$copy_tomail_field[$config]];
                        $copy_extra="From: ".$copy_from[$config]."\r\n";
                        // get autoresponse  attachments if necessary
                        if($copy_attachment_fields[$config]!="")
                             $semi_rand=md5(time());
                             $border="==Multipart_Boundary_x{$semi_rand}x";
                             $copy_extra.="MIME-Version: 1.0\r\n";
                             $copy_extra.="Content-Type: multipart/mixed; boundary=\"{$border}\"";
                             $message=getAttachments($copy_attachment_fields[$config], $message, $content_type, $border);
                        else
                             $copy_extra.="MIME-Version: 1.0\r\n".$content_type;
                        // send autoresponse email
                        if($debug==1)
                             if($set_flag == 1)
                                  $debug_text.="<p><b>Autoresponder would have sent flagged for spam if not in debug mode.</b></p>";
                             else
                                  $debug_text.="<p><b>Autoresponder would have sent if not in debug mode.</b></p>";
                        else if($debug==0)
                             $send_copy = 1;
                             if($copy_tomail=="" || !eregi($regex,$copy_tomail))
                                  $send_copy = 0;
                             if($send_copy == 1)
                                  if($set_flag == 1)
                                       $copy_subject = $flag_spam[$config]." ".$copy_subject[$config];
                                  else
                                       $copy_subject = $copy_subject[$config];
                                  mail("$copy_tomail", "".$copy_subject."", "$message", "$copy_extra");
                   // showing thanks pages from a successful submission
                   if($thanks_page[$config]=="")
                        echo "<h3>".$thanks_page_title[$config]."</h3>\n";
                        echo "<p>".$thanks_page_text[$config]."</p>\n";
                        if(strlen($debug_text) > 0)
                             echo "<p><b><i>".$debug_text."</i></b></p>\n";
                   else
                        header("Location: ".$thanks_page[$config]);
              else
                   // entering error page options from missing required fields
                   if($error_page[$config]=="")
                        echo "<h3>".$error_page_title[$config]."</h3>\n";
                        echo "<ul>\n";
                        echo $security_filter.$empty_message.$error_message.$spam_message.$time_message.$captcha_message.$max_url_message;
                        echo "</ul>\n";
                        echo "<p>".$error_page_text[$config]."</p>\n";
                   else
                        header("Location: ".$error_page[$config]);
         else
              echo "<h3>".$error_page_title[$config]."</h3>\n";
              // message if unauthorized domain trigger from referer checking option
              echo "<p>Sorry, mailing request came from an unauthorized domain.</p>\n";
    // end procedural scripting //
    else
         echo "<h3>Error</h3>";
         echo "<p>No form data has been sent to the script</p>\n";
    if($footer[$config]!="")
         include($footer[$config]);
    ob_end_flush();
    ?>
    verify.php
    <?php
    require_once('recaptchalib.php');
    $privatekey = "i hide this on the forum";
    $resp = recaptcha_check_answer ($privatekey,
                                   $_SERVER["REMOTE_ADDR"],
                                   $_POST["recaptcha_challenge_field"],
                                   $_POST["recaptcha_response_field"]);
    if (!$resp->is_valid) {
       // What happens when the CAPTCHA was entered incorrectly
       die ("The reCAPTCHA wasn't entered correctly. Go back and try it again." .
            "(reCAPTCHA said: " . $resp->error . ")");
    } else {
       // Your code here to handle a successful verification
    ?>
    We have a saying in the Netherlands; "Not being abled to see the tree's trough the forest"
    Well i dont see it anymore...
    I managed to get it in the code but it doesnt work.
    I hope someone can help me out!

    @Nancy O.
    Thanks for your support i appreciate it that you helped me out a many times.
    However i have read all of the topics you posted.
    I know in the mail form i can disable the "sort of Captcha". I wanted to disable it and insert reCaptcha instead.
    I will re-make the form because like you said (and i already figured it out myself) ;
    "b) Don't modify forms until you get a very basic form working on your server."
    And youre right, im taking too much work at once.
    @CowboyInAZ
    Im a hobbyist that learns really really fast.
    Before March 23 i never used CSS, Javascript and XHTML. And never combined them all together with PHP. (never ever created a php based file from scratch)
    The reason why i use other persons code is because i learn faster with examples, and because i dont need to reinvent the wheel if someone already invented it. The only thing i do with it is learn the workings, customise it and at last, rewrite the code when i understand it.
    If you look at my current site: http://www.wientjesvoegwerk.nl/
    You will notice that the site is validated by W3C with no errors and warnings.
    I think it was Nancy O. that gave me the link to the validator. Thats how i discovered the service.
    You need to know that in 1 day (from 63 errors and 12 warnings) i removed all errors. And i didnt knew much about it, and why errors happend while the site looks fine.
    So im just curious how things work and thats why i "steal" codes and adjust them to learn myself.
    I also want a education like you spoke of, but im interested in a different media.
    I want to be abled to create my dream project wich involves new ways for game studios to earn money.
    This is just a simple start, im also taking tutorials in C#, C++.

  • New Itunes wont work!!! :-(

    I dont know whats going on, when i opened itunes it said that there was a new update and i was all like ya!!!....Not any more!!! When i was downloading the quick times part there was some errar and it said i could debug. so i did and everthing was fine. When i went to open up itunes it would not open at all. It would just show the bizzy icon and then nother. I removed both itunes and quick times and then trying to reinstall but still nothing. No errar this time but sill wont work. Need help plzzz.

    i'm getting the exact same thing on my computer and i don't like it, iTunes has only gotten more and more problems ever since v.4(the version i started with), it seems like they need to take MORE TIME on the updates before they put them out and instead of having us have to hunt for the fix to the problem we're having and fixing it ourselves they should make corrected updates. all i know is i'm growing more displeased with each update of iTunes. am i the only one that feels this way???
      Windows XP  

  • Breakpoints not working with Command Line Project

    I have created a “Command Line Utility” “C++ Tool” and I am unable to breakpoint into the code. I’m in the Debug environment and select “Debug Executable” but no luck. I created the sample tutorial which is a Coco Hello World example and was able to get breakpoints to work there. I downloaded and installed XCode yesterday. Been trying to get breakpoints to work every since with no luck. Thanks in advance.
    Sean
    MBP   Mac OS X (10.4.9)  

    OK, the plot thickens a little. I was being too aggressive on my breakpoint. If I breakpoint at the first cout then I can breakpoint. The problem is if I break after the cin. Breakpoints after cin won’t execute and if I pause all context is lost – like the stack got corrupted.
    <pre>
    #include <iostream>
    #define ENDFILE "CTRL-D or CTRL-Q then CTRL-D in XCODE"
    int main (int argc, char * const argv[])
    char next;
    // insert code here...
    std::cout << "Hello, World!\n";
    const char NWLN = '\n';
    int charCount;
    int lineCount;
    lineCount = 0;
    std::cout << "Enter a line or press " << ENDFILE << ": ";
    std::cin.get(next);
    while (!std::cin.eof())
    charCount = 0;
    while (next != NWLN)
    std::cout.put(next);
    charCount++;
    std::cin.get(next);
    std::cout.put(NWLN);
    lineCount++;
    std::cout << "Number of characters in line " << lineCount
    << " is " << charCount << std::endl;
    std::cout << "Enter a line or press " << ENDFILE << "; ";
    std::cin.get(next);
    std::cout << std::endl << std::endl << "Number of lines processed is "
    << lineCount << std::endl;
    return 0;
    </pre>
    MBP   Mac OS X (10.4.9)  

  • External breakpoints not working

    Hi,
    I am working on a CRM 7.0 (SAP_ABA 7.01 SP 6) system and my external breakpoints are not working.
    If I set an external  breakpoints for my user in a component method or HTML page  and I log onto the CRM Web UI
    the system hangs. The same happens if I switch on the debugging directly in the component
    without breakpoints. I have the same behavior for breakpoints in Web Dynpro code, when I try to execute a WD application.
    Breakpoints in ABAP reports are working fine, so I don't think it's a problem of authorities or roles, should be something
    with the HTML debugging. I worked on other SAP CRM 7.0 systems before and never had this problem before.
    Somebody can help or has an idea?!
    Thanks.
    Best regards,
    Oliver
    Edited by: Oliver Pregler on Aug 6, 2010 1:57 PM
    Edited by: Oliver Pregler on Aug 6, 2010 1:58 PM

    Hi Oliver,
    Which component and view u are setting the break?
    Are u sure that u are setting external break-point?
    Is there any error/exception?
    Try to set and infinite loop and debug using trx. sm50. If ur scenario is totaly standard create an enhacement point to set the infitine loop.
    DO.
    if sy-subrc eq  123.
    exit.
    endif.
    ENDDO.
    Hope with the code above u be able to debug.
    Best regards,
    Caíque Escaler

  • My american iphone wont work in norway

    Hi I have a problem with my iphone, because it wont work in norway after Ive been using it in America for 9 months now.
    the carrier I use in Norway is Telenor, and I know its something about the unlock, but can I get a straight forward answer on what I have to do to get this to work?
    people all around the network keep walking around the point, and I just dont get it, and it keeps annoying me!
    Anyone please?

    AT&T is the carrier for Puerto Rico. Your phone is locked to AT&T. Contact them:
    http://www.att.com/esupport/article.jsp?sid=KB414532&cv=820#fbid=Ont7guWFCdY

  • Cookie wont work on server?

    Hi!
    I trying to create cookies, and it works fine when i work in JDevoloper. But the same code on the server wont work- no cookie will be created.
    (I use Apache 2.0.52 ,Tomcat 5.0.28)
    <% Cookie Cookietest = new Cookie(("start"), ("321"));
    Cookietest.setMaxAge(36000);
    Cookietest.setPath("/");
    response.addCookie(Cookietest); %>
    Whyyyyyy ??? :O
    BRGDS//PN

    I�m trying to a cookie both from a JSP�page and a servlet and nothing works.
    On the servlet i do forward(request,response) after i have made addCookie.
    And on the JSP a have tried with both response.setHeader("refresh","url")
    adn response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY);
    response.setHeader("Location","10; url=url"); and also with totaly "normal" A href links.
    Nothing nothing nothing works...
    BRGDS
    PN

  • Flash Pro CC Debug won't work correctly

    Hello. I am using trial version of Flash Pro CC and I think it's a glitch.
    If there are multiple layers that have own frame script and run Debut(ctrl + alt + enter ), debug won't work correctly.
    for example there are 2 layers on main stage Layer A and Layer B..
    Layer A has  this one trace script,
    trace("1");
    Layer B has those 2 trace scripts.
    trace("2");
    trace("3);
    And I put breakpoint  on trace("1"); of Layer A, and run Debug and use "Step In"  to run all scripts manually.
    And if trace("1");  is finished, you are supposed to  get to trace("2"); but instead you will get to trace("3"); in this case.
    I mean little yellow arrow, which tells me what script is running right now, is marked on trace("3");.. not on trace("2");
    It seems Flash pro CC thinks Layer A's trace("1");  == Layer B's trace("2"). He can't recognize Layer A and Layer B are different.
    I think it's a glitch. Does anybody notice this glitch?

    Does anybody notice this glitch?  I want to check if it's really a glitch or not before using newest version of Flash CC.
    If it's a glitch, I will stick with CS6.

  • Problem debugging TimerTask threads - Unnable to debug breakpoints

    Hello,
    I am developing a J2ME midlet that uses Timer along with TimerTask so run a specific method each second. The problem is that I cant debug whatever is happening in the TimerTask, i.e. even though I set breakpoints the debugger never "sees" them and stops.
    Full code example:
    package testdebug;
    import javax.microedition.midlet.*;
    import java.util.*;
    public class Test extends MIDlet {
         public void startApp()
              Timer t = new Timer();
              t.scheduleAtFixedRate(new TimerTask() {
                   public void run() {
                        System.out.println("TimerTask executed"); // <- SET BREAKPOINT HERE
              }, 0, 1000);
              System.out.println("end of startApp");
         public void pauseApp(){}
         public void destroyApp(boolean flag){}
    }Since I need to be able to debug whatever is happening in such a statement I need to be able to set breakpoints. If I set a breakpoint at the given line, it is never raised. I am using the Eclipse IDE along with EclipseME. Tried searching at their site for an answer but haven't found any.
    If I replicate the same code above using Thread instead the breakpoints work:
    package testdebug;
    import javax.microedition.midlet.*;
    import java.util.*;
    public class Test extends MIDlet {
         public void startApp()
              new Thread(new Runnable() {
                   public void run() {
                        while(true)
                             System.out.println("Thread loop executed"); // <- SET BREAKPOINT HERE
                             try {Thread.sleep(1000);}catch (Exception e) {}
              }).start();
              System.out.println("end of startApp");
         public void pauseApp(){}
         public void destroyApp(boolean flag){}
    }Setting breakpoints within this code works fine! But in this case I want to use a Timer along with a TimerTask so I need to get the breakpoints working.
    I have also tried using my own class that inherits TimerTask and implements Runnable but I still can't get the breakpoints to work. If I do the same using Thread it works, so the problem seems to be TimerTask.
    Anyone has got the same problem or/and has a solution to this?

    I was able to put breakpoints at ur specified line
    morever this has nothing to do with Timertask
    try printing some more lines or some coding in run method
    and see if breakpoints work :)

Maybe you are looking for