[jboss-as7-dev] dmr.js

Max Rydahl Andersen manderse at redhat.com
Thu Apr 25 07:54:20 EDT 2013


On Mon, Apr 22, 2013 at 08:34:55AM -0400, Jason Greene wrote:
>>> Well last time you didn't like the low level JSON interface (e.g. no deployment API that wraps it, uploads require an http upload and a management op).
>>
>> Yes, I was hoping the management client could wrap it ;)
>
>Doesn't that defeat the purpose of a REStish API?

Not really since we call from Java we still need "something" to wrap the url calls - wether that is the management client our our own code does make much sense.

>> anyways, I prefer a more manual API if it unties us from having to bundle multiple versions of the client library which was the case a few times now.
>
>Weren't the issues fixed, on and you can use one client library?

We are down to two I believe - one for 7.0.0 and another one for all others. 

Yes it is better and fixed for now.

But once we hit AS8/AS9/EAP7 etc. will that continue ?

And as long as early releases of AS/EAP gets released
at a different schedule than tooling (which is expected) we'll always have this challenge and i'm just trying
to see if we can find an approach where we on the tooling side can handle these small bumps better than having
to rush around trying to add in mixed set of binaries to support an early beta/alpha release.

/max

>
>>
>> All a balancing act.
>>
>>> You also would have to implement the auth protocol yourself. As to the http server side, we take patches! :)
>>
>> Got any pointers ? :)
>
>The source code to jboss SASL.
>
>>
>> /max
>>
>>> On Apr 10, 2013, at 7:56 AM, Max Rydahl Andersen <manderse at redhat.com> wrote:
>>>
>>>> On Tue, Apr 09, 2013 at 12:01:47PM -0400, Jason Greene wrote:
>>>>> Just to be extra clear. Transparent / silent local authentication which is handled by the native protocol requires that the client implement the auth protocol. This is not possible from a web browser since JS code is not allowed to read arbitrary files. So for this reason we do not have support for it over http.
>>>>
>>>> Yes, but a java client could so it would be great for us - would have avoided us from remoting binary bugs in tooling.
>>>>
>>>> This of course assumes there are less compatibility bugs in the autentication layer than in remoting :)
>>>>
>>>> /max
>>>>
>>>>> On Apr 9, 2013, at 6:03 AM, Max Rydahl Andersen <manderse at redhat.com> wrote:
>>>>>
>>>>>> This is cool - how does the authentication work/not work ?
>>>>>>
>>>>>> Found this on github:
>>>>>> "It requires a patched AS7 instance if not running on the same host.
>>>>>> Some browsers require extra steps to get the authentication working, but Firefox should work out of the box."
>>>>>>
>>>>>> http://haraldpehl.blogspot.de/2013/03/independent-jboss-admin-console.html explains it a bit but
>>>>>> what is the patch needed for AS7 and with all these quirks do you think we can make it portable/usable for
>>>>>> writing a webapp that connects remotely ?
>>>>>>
>>>>>> /max
>>>>>>
>>>>>> On Tue, Apr 09, 2013 at 08:11:59AM +0200, Heiko Braun wrote:
>>>>>>> Here's a code sample:
>>>>>>>
>>>>>>>
>>>>>>> <script>
>>>>>>> // access EC2 demo instance
>>>>>>> http = new XMLHttpRequest();
>>>>>>> http.withCredentials = true;
>>>>>>> http.open("POST", "http://as7-preview.dyndns.org:9990/management", true);
>>>>>>>
>>>>>>> // async response handler
>>>>>>> http.onreadystatechange =function()
>>>>>>> {
>>>>>>> if (http.readyState==4 && http.status==200)
>>>>>>> {
>>>>>>>     // decode response
>>>>>>>     response = dmr.ModelNode.fromBase64(http.responseText);
>>>>>>>     alert(response.get("result").asString());
>>>>>>> }
>>>>>>> }
>>>>>>>
>>>>>>> // content type headers for DMR API
>>>>>>> http.setRequestHeader("Content-type","application/dmr-encoded");
>>>>>>> http.setRequestHeader("Accept","application/dmr-encoded");
>>>>>>>
>>>>>>> // create an operation
>>>>>>> op = new dmr.ModelNode();
>>>>>>> op.get("operation").set("read-attribute");
>>>>>>> op.get("address").setEmptyList();
>>>>>>> op.get("name").set("release-version");
>>>>>>>
>>>>>>> // send as base64 encoded
>>>>>>> http.send(op.toBase64String());
>>>>>>>
>>>>>>> </script>
>>>>>>>
>>>>>>>
>>>>>>> On Apr 8, 2013, at 1:20 PM, Heiko Braun <hbraun at redhat.com> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> If you want to use the DMR API form plain JS and need all the typing build in, the dmr.js might be your friend:
>>>>>>>>
>>>>>>>> https://github.com/hal/dmr.js
>>>>>>>>
>>>>>>>>
>>>>>>>> Regards, Heiko
>>>>>>>> _______________________________________________
>>>>>>>> jboss-as7-dev mailing list
>>>>>>>> jboss-as7-dev at lists.jboss.org
>>>>>>>> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>>>
>>>>>>> _______________________________________________
>>>>>>> jboss-as7-dev mailing list
>>>>>>> jboss-as7-dev at lists.jboss.org
>>>>>>> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>>>
>>>>>> _______________________________________________
>>>>>> jboss-as7-dev mailing list
>>>>>> jboss-as7-dev at lists.jboss.org
>>>>>> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev


More information about the jboss-as7-dev mailing list