Ken Nguyen
Ken Nguyen

Reputation: 95

WFFM - Capcha - Value cannot be null

I'm using Sitecore 8 update 3 and currently I added a capcha to WFFM form and pressed to audio but its showing error as below:

[ArgumentNullException: Value cannot be null.
Parameter name: input]

       System.IO.BinaryReader..ctor(Stream input, Encoding encoding, Boolean leaveOpen) +13905648
       Sitecore.Form.Core.Media.Wave.Concat(StreamList inStreams, BinaryWriter to) +193
       Sitecore.Form.Core.Web.CaptchaAudionHandler.DoSpeech(String text, String fileName) +452
       Sitecore.Form.Core.Web.CaptchaAudionHandler.ProcessRequest(HttpContext context) +618
       Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver.ProcessRequest(HttpContext context) +358
       System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +508
       System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +92

How I can resolve this ?

Updated: After I used the package named Sitecore.Support.432676 (Sitecore Climber's suggest). I updated for javascript in the file CaptchaField.cshtml and the audio is working now.

<script type="text/javascript">
    $scw(document).ready(function () {
        $scw('.selector-field-captcha-play').click(
            function (event) {
                event.preventDefault();
                var container = $scw(".field-captcha-audio");
                container.empty();
                container.append('<audio src="' + '@audioHandlerUrl' + "&nocache=" + Date.now() + '" autoplay="autoplay"><embed src="' + '@audioHandlerUrl' + "&nocache=" + Date.now() + '" width="180" height="90" hidden="true" /></audio>');
            }
        );
    });
</script>

But after clicking on the button refresh. All the data is empty because in the file sc.fields-captcha.js:

$scw(this.element).find(".selector-field-captcha-refresh").click(function (event) {
    event.preventDefault();
    window.location.reload();
});

Appreciate any ideas for this. Thanks

Upvotes: 2

Views: 485

Answers (1)

LonghornTaco
LonghornTaco

Reputation: 452

Remember to perform the final step of the post-installation steps for WFFM:

  1. Add the following nodes to the Web.config:

<add name="CaptchaImage" verb="*" path="CaptchaImage.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />

<add name="CaptchaAudio" verb="*" path="CaptchaAudio.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />

  • for IIS 6.x under the configuration\system.web\httpHandlers node
  • for IIS 7.x and up under the configuration\system.webServer\handlers node

Upvotes: 6

Related Questions