<p dir="auto">there is a problem in <code class="notranslate">Symfony\Component\Form\Extension\HttpFoundation\HttpFoundationRequestHandler</code><br>
lines 38-42</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="    $method = $form-&gt;getConfig()-&gt;getMethod();

    if ($method !== $request-&gt;getMethod()) {
        return;
    } "><pre class="notranslate"><code class="notranslate">    $method = $form-&gt;getConfig()-&gt;getMethod();

    if ($method !== $request-&gt;getMethod()) {
        return;
    } 
</code></pre></div>
<p dir="auto">i use the same form and it's creating process for POST, PUT, PATCH. i set the method in the template like this:</p>
<p dir="auto"><code class="notranslate">form_start( form , {'method': 'POST' , 'action': url( 'post_resource' ) })</code></p>
<p dir="auto">when the method is PUT or PATCH (other than the one in form's config, which is default, ie POST), then the check on line 40 fails with no verbal error.</p>
<p dir="auto">why is this check&amp;return here anyway? i don't see any point in it.</p>
<p dir="auto">I am trying to forward a request to controller action<br>
using<br>
i am inside actionA and i am trying to forward request to actionB</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="$this-&gt;forward('controller:actionB', $path);"><pre class="notranslate"><code class="notranslate">$this-&gt;forward('controller:actionB', $path);
</code></pre></div>
<p dir="auto">The problem is come methods in actionB throw Exception and get a blank page after that.<br>
I expected to see the exception trace in the debugging page not a blank page.</p>
<p dir="auto">after check the source code of the forward function</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content=" public function forward($controller, array $path = array(), array $query = array())
 {
      $path['_controller'] = $controller;
      $subRequest = $this-&gt;container-&gt;get('request_stack')-&gt;getCurrentRequest()-&gt;duplicate($query, 
     null, $path);
    return $this-&gt;container-&gt;get('http_kernel')-&gt;handle($subRequest,      HttpKernelInterface::SUB_REQUEST);
}"><pre class="notranslate"><code class="notranslate"> public function forward($controller, array $path = array(), array $query = array())
 {
      $path['_controller'] = $controller;
      $subRequest = $this-&gt;container-&gt;get('request_stack')-&gt;getCurrentRequest()-&gt;duplicate($query, 
     null, $path);
    return $this-&gt;container-&gt;get('http_kernel')-&gt;handle($subRequest,      HttpKernelInterface::SUB_REQUEST);
}
</code></pre></div>
<p dir="auto">And then forward function call</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="return $this-&gt;container-&gt;get('http_kernel')-&gt;handle($subRequest,       HttpKernelInterface::SUB_REQUEST);
}"><pre class="notranslate"><code class="notranslate">return $this-&gt;container-&gt;get('http_kernel')-&gt;handle($subRequest,       HttpKernelInterface::SUB_REQUEST);
}
</code></pre></div>
<p dir="auto">handle function code</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
{
    $request-&gt;headers-&gt;set('X-Php-Ob-Level', ob_get_level());

    try {
        return $this-&gt;handleRaw($request, $type);
    } catch (\Exception $e) {
        if (false === $catch) {
            $this-&gt;finishRequest($request, $type);

            throw $e;
        }

        return $this-&gt;handleException($e, $request, $type);
    }
}"><pre class="notranslate"><code class="notranslate">public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
{
    $request-&gt;headers-&gt;set('X-Php-Ob-Level', ob_get_level());

    try {
        return $this-&gt;handleRaw($request, $type);
    } catch (\Exception $e) {
        if (false === $catch) {
            $this-&gt;finishRequest($request, $type);

            throw $e;
        }

        return $this-&gt;handleException($e, $request, $type);
    }
}
</code></pre></div>
<p dir="auto">the catch variable is by default = true and there no way to pass it in the forward function<br>
so it will never throw any exception and always return a blank page</p>
<p dir="auto">I think there is something wrong here because i can't see any exception thrown in actionB</p>