Hi Fraser,
I'm trying to run the proton javascript bindings from within a browser. I'm 
getting various errors depending on the way I'm doing it and I was hoping you 
could shed some light on the correct approach.
I have node recv.js running in a separate window.

The first way I tried was just including proton.js directly. When I load the 
page the console shows the following for the HTML listed below:
pre-main prep time: 6 ms
proton is [object Object]
before put
Uncaught TypeError: Cannot read property 'fa' of null
Uncaught TypeError: Cannot read property 'fa' of null

Here is the HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
<html xmlns="http://www.w3.org/1999/xhtml";>

        <title>An XHTML 1.0 Strict standard template</title>
        <meta http-equiv="content-type" 
                content="text/html;charset=utf-8" />

<script type="text/javascript" 

<script type="text/javascript">

console.log("proton is " + window.proton);
var address = "amqp://";
var subject = "BrowserMessage";
var msgtext = "Hello From Browser!";
var tracker = null;
var running = true;

var message = new proton.Message();
var messenger = new proton.Messenger();

var pumpData = function() {
    var status = messenger.status(tracker);
    if (status != proton.Status.PENDING) {
        if (running) {
            running = false;

    if (messenger.isStopped()) {

messenger.on('error', function(error) {console.log("this is the error" + 
messenger.on('work', pumpData);

message.body = msgtext;

console.log("before put");




The output in the window running node recv.js is:
[0x535398]:ERROR[-2] AMQP header mismatch: '' (connection aborted)

CONNECTION ERROR connection aborted (remote)

When I browserify the proton.js into qpid-proton-browser.js and load that file 
instead, I get the following when the page loads:
Uncaught TypeError: Cannot read property 'replace' of undefined
proton is undefined
Uncaught ReferenceError: proton is not defined

The Uncaught TypeError is due to a referece to "process.argv[1]". If I manually 
edit the qpid-proton-browser.js file to define all the process properties that 
it wants, I still get the "proton is undefined" error.

Do you know what I'm doing wrong?


Reply via email to