REST Response Formatting Difference Folderproperties and other queries

Hi,
anyone has an explanation why the response for a /Properties call is formatted different to most of the other calls.
For example:
http://sphost/sites/DennisDevSite/_api/Web/GetFolderByServerRelativeUrl('/sites/DennisDevSite/alib/')/Properties
<?xml version="1.0" encoding="utf-8"?>
<entry xml:base="http://sphost/sites/DennisDevSite/_api/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"
xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml">
  <id>Web/GetFolderByServerRelativeUrl('/sites/DennisDevSite/alib/')/Properties</id>
  <category term="SP.PropertyValues" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
  <link rel="edit" href="Web/GetFolderByServerRelativeUrl('/sites/DennisDevSite/alib/')/Properties" />
  <title />
  <updated>2015-02-10T12:13:58Z</updated>
  <author>
    <name />
  </author>
  <content type="application/xml">
    <m:properties>
      <d:vti_x005f_hassubdirs>true</d:vti_x005f_hassubdirs>
      <d:vti_x005f_listbasetype m:type="Edm.Int32">1</d:vti_x005f_listbasetype>
      <d:vti_x005f_listrequirecheckout>false</d:vti_x005f_listrequirecheckout>
      <d:vti_x005f_dirlateststamp m:type="Edm.DateTime">2015-02-10T12:08:54</d:vti_x005f_dirlateststamp>
      <d:vti_x005f_isexecutable>false</d:vti_x005f_isexecutable>
      <d:vti_x005f_replid>rid:{AAC2DB73-39FC-4E2E-8E01-875B3040960F}</d:vti_x005f_replid>
      <d:vti_x005f_rtag>rt:AAC2DB73-39FC-4E2E-8E01-875B3040960F@00000000000</d:vti_x005f_rtag>
      <d:vti_x005f_isbrowsable>true</d:vti_x005f_isbrowsable>
      <d:vti_x005f_listservertemplate m:type="Edm.Int32">101</d:vti_x005f_listservertemplate>
      <d:vti_x005f_modifiedby>i:0#.w|nfsp\user1</d:vti_x005f_modifiedby>
      <d:vti_x005f_docstoretype m:type="Edm.Int32">1</d:vti_x005f_docstoretype>
      <d:docid_x005f_msft_x005f_hier_x005f_list_x005f_siteid>04e5fb5e-b335-4622-8317-769b12ab4398</d:docid_x005f_msft_x005f_hier_x005f_list_x005f_siteid>
      <d:vti_x005f_listenableminorversions>false</d:vti_x005f_listenableminorversions>
      <d:vti_x005f_level m:type="Edm.Int32">1</d:vti_x005f_level>
      <d:vti_x005f_isscriptable>false</d:vti_x005f_isscriptable>
      <d:docid_x005f_msft_x005f_hier_x005f_list_x005f_guid>805e17b027284b30a889a7e8f025696b</d:docid_x005f_msft_x005f_hier_x005f_list_x005f_guid>
      <d:vti_x005f_listenablemoderation>false</d:vti_x005f_listenablemoderation>
      <d:vti_x005f_foldersubfolderitemcount m:type="Edm.Int32">2</d:vti_x005f_foldersubfolderitemcount>
      <d:vti_x005f_listtitle>alib</d:vti_x005f_listtitle>
      <d:vti_x005f_metainfoversion m:type="Edm.Int32">3</d:vti_x005f_metainfoversion>
      <d:IsAttachmentLibrary m:type="Edm.Int32">0</d:IsAttachmentLibrary>
      <d:vti_x005f_folderitemcount m:type="Edm.Int32">27</d:vti_x005f_folderitemcount>
      <d:docid_x005f_msft_x005f_hier_x005f_listid m:type="Edm.Int32">4</d:docid_x005f_msft_x005f_hier_x005f_listid>
      <d:vti_x005f_timelastmodified m:type="Edm.DateTime">2015-02-04T12:22:15</d:vti_x005f_timelastmodified>
      <d:vti_x005f_nexttolasttimemodified m:type="Edm.DateTime">2015-02-02T08:57:15</d:vti_x005f_nexttolasttimemodified>
      <d:vti_x005f_parentid>{3DB81064-00CC-4483-813E-DE194A773279}</d:vti_x005f_parentid>
      <d:vti_x005f_candeleteversion>true</d:vti_x005f_candeleteversion>
      <d:vti_x005f_listenableversioning>false</d:vti_x005f_listenableversioning>
      <d:vti_x005f_listname>{805E17B0-2728-4B30-A889-A7E8F025696B}</d:vti_x005f_listname>
      <d:vti_x005f_etag>"{AAC2DB73-39FC-4E2E-8E01-875B3040960F},0"</d:vti_x005f_etag>
      <d:vti_x005f_timecreated m:type="Edm.DateTime">2014-08-13T14:00:15</d:vti_x005f_timecreated>
    </m:properties>
  </content>
</entry>
And now compared a filter - Respond
http://sphost/sites/DennisDevSite/_api/Web/GetFolderByServerRelativeUrl('/sites/DennisDevSite/alib/')/Files?$filter=Name%20eq%20%27a.pdf%27
<?xml version="1.0" encoding="utf-8"?>
<feed xml:base="http://sphost/sites/DennisDevSite/_api/" xmlns="http://www.w3.org/2005/Atom" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"
xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml">
  <id>6e784be3-1fc3-4386-b34c-47e173877266</id>
  <title />
  <updated>2015-02-10T12:19:36Z</updated>
  <entry>
    <id>Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')</id>
    <category term="SP.File" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" />
    <link rel="edit" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')" />
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Author" type="application/atom+xml;type=entry" title="Author" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')/Author"
/>
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/CheckedOutByUser" type="application/atom+xml;type=entry" title="CheckedOutByUser" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')/CheckedOutByUser"
/>
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/ListItemAllFields" type="application/atom+xml;type=entry" title="ListItemAllFields" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')/ListItemAllFields"
/>
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/LockedByUser" type="application/atom+xml;type=entry" title="LockedByUser" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')/LockedByUser"
/>
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/ModifiedBy" type="application/atom+xml;type=entry" title="ModifiedBy" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')/ModifiedBy"
/>
    <link rel="http://schemas.microsoft.com/ado/2007/08/dataservices/related/Versions" type="application/atom+xml;type=feed" title="Versions" href="Web/GetFileByServerRelativeUrl('/sites/DennisDevSite/alib/a.pdf')/Versions"
/>
    <title />
    <updated>2015-02-10T12:19:36Z</updated>
    <author>
      <name />
    </author>
    <content type="application/xml">
      <m:properties>
        <d:CheckInComment></d:CheckInComment>
        <d:CheckOutType m:type="Edm.Int32">2</d:CheckOutType>
        <d:ContentTag>{07DCA659-1E2F-401C-B71E-62299F5C922C},9,1</d:ContentTag>
        <d:CustomizedPageStatus m:type="Edm.Int32">0</d:CustomizedPageStatus>
        <d:ETag>"{07DCA659-1E2F-401C-B71E-62299F5C922C},9"</d:ETag>
        <d:Exists m:type="Edm.Boolean">true</d:Exists>
        <d:Length m:type="Edm.Int64">828661</d:Length>
        <d:Level m:type="Edm.Byte">1</d:Level>
        <d:MajorVersion m:type="Edm.Int32">1</d:MajorVersion>
        <d:MinorVersion m:type="Edm.Int32">0</d:MinorVersion>
        <d:Name>a.pdf</d:Name>
        <d:ServerRelativeUrl>/sites/DennisDevSite/alib/a.pdf</d:ServerRelativeUrl>
        <d:TimeCreated m:type="Edm.DateTime">2014-08-13T14:00:59Z</d:TimeCreated>
        <d:TimeLastModified m:type="Edm.DateTime">2015-02-10T12:19:18Z</d:TimeLastModified>
        <d:Title></d:Title>
        <d:UIVersion m:type="Edm.Int32">512</d:UIVersion>
        <d:UIVersionLabel>1.0</d:UIVersionLabel>
      </m:properties>
    </content>
  </entry>
</feed>
What i mean is, that the tags in the second response are somewhat human readable whilst the tags in the first respond are somewhat left technical.
am I doing something wrong?
Thx in advance
Dennis

You are not doing anything wrong. The xml is different because of what SharePoint considers the return value. In the case of the properties, this is considered one Entity or an object of key/value pairs. In the case of the files, this is considered a collection
of entities and is returned as a feed. The xml will be different. I recommend that you set your 'accept' header to 'application/json;odata=verbose' to make it easier to handle return values in your code. You can use either System.Web.Scrip.Serialization namespace
or Newtonsoft library to parse the json. You can also control how much json is returned by setting the odata to return verbose, minimal or none .
http://www.vrdmn.com/2014/06/improving-rest-api-performance-in.html
Blog | SharePoint Field Notes Dev Tools |
SPFastDeploy | SPRemoteAPIExplorer

Similar Messages

  • TS2755 I received a message from my wife, to which I replied but the response went to her and others in her contact list. How is this possible?

    I received a message from my wife, to which I replied but the response went to her and others in her contact list. How is this possible?

    I have had a similar but worse issue.  I sent a text with photo to 6 friends and family members.  Their replies went to folks in my contacts list who were not even part of the original string.  In fact, one of the replies went to someone whom I had evidently called once but was not in my contact list. This is very strange.

  • Calling to Mobiles without internet and other quer...

    Hi Team,
    I am new to this community, dont know if i am posting at correct place and if the questions are too lame
    Currrent Location - Amsterdam, Netherlands
    Queries -
    1) If i choose a plan of 8Eur(800 mins) Internalional India calling subscription, can i call in local area in amsterdam? If so, what are the rates ?
    2) Do we require internet plan activated for skype call? If yes, do 2g speed is enough for clear voice? 
    3) Do the person whom i call should be on Skype too (having internet connection  ? ) ?
    Thanks alot!

      Skype_cell_prob wrote:
    1) If i choose a plan of 8Eur(800 mins) Internalional India calling subscription, can i call in local area in amsterdam? If so, what are the rates ?
    2) Do we require internet plan activated for skype call? If yes, do 2g speed is enough for clear voice? 
    3) Do the person whom i call should be on Skype too (having internet connection  ? ) ?
    Hello
    1. To call to or within the Netherlands you require a Subscription which covers that. Choose from the available options here:
    http://www.skype.com/en/rates/#FR
    2. Yes. Check your audio quality by calling our Call Testing Service on echo 123
    3. Skype to Skype calls are free worldwide. Subscriptions are for calling to landlines and/or cellphones.
    Skype subscription  call quality guide
    TIME ZONE - US EASTERN. LOCATION - PHILADELPHIA, PA, USA.
    I recommend that you always run the latest Skype version: Windows & Mac
    If my advice helped to fix your issue please mark it as a solution to help others.
    Please note that I generally don't respond to unsolicited Private Messages. Thank you.

  • RAM upgrade and other queries for 13" Macbook (Late 2006)

    Hi everyone,
    I have read many posts on these forums (very informative I must add) but I need your help in clarifying a few issues. I have a 13.3" white Macbook which I purchased in May 2007 - 2 GHz Core 2 Duo, 1 GB 667 MHz DDR2 SDRAM, 80 GB HDD. I plan on upgrading from my current OS 10.4.11 to 10.6 Snow Leopard in a few weeks. My issues:
    1. Upgrade RAM to the max allotment. I read on Apple support (http://support.apple.com/kb/HT1651) that I can only go up to 2 GB RAM for my MB model. However various folks in this forum as well as 3rd party vendors dispute this for up to 3.3 GB RAM - via two 2 GB RAM memory. Can someone validate this? I plan to purchase memory from OWC.
    2. My laptop fan is running more frequently than normal. Should I worry about this? I don't see any abnormal usage in Activity Monitor. Any thoughts?
    3. I have clocked 312 battery recharge cycles on my MB battery. A couple of times the laptop shutdown when there was 15 mins charge remaining. Anyway the past few weeks I have kept the power cord plugged in since I don't move much. I read somewhere this bypasses the battery once the charge is complete. Is this true? Is there a battery recharge cycle count when its advisable to replace the battery?
    Thanks in advance for the help guys. My MB has served me well and I really want to continue on this machine rather than doling out more $$ for a new MB.
    Best,
    Wal (SD)

    I have about 20GB free space out of a total of 80 GB HD. At this moment I don't plan on increasing the HD space. But after installing OS 10.6, if the fan speed issue continues then I may invest in a new HD. My assumption is installing OS 1.6 will free up some space and I am hoping that will keep me comfortable.
    Reg. my battery, yeah it has lasted for over 2.5 yrs. So I am happy about that. But I hear what you are saying. Perhaps I will get a new battery. Are there any longer lasting batteries introduced for the late '06 MB? A full charge lasts me about 3 hours - assuming I don't run any data or video intensive apps.
    Thanks again for your advice!

  • RE6500 - deleting extended networks and other queries

    I've got four questions which I hope have easy answers:
    1) I have an RE6500 and have set it up using the excellently simple instructions to extend my 2.4GHz network.. Later, once it's running, I use the web interface to a add a 5GHz extended network. Now my original 2.4GHZ network, which belongs to my router, is extended to 2.4GHz and 5GHz. Excellent. So later still I decide I want to remove the 5GHz network. But how? There's no button or box to turn off either of the extended networks. The only way I've been able to get rid of the 5GHz extended network is to perform a factory reset and start again from scratch. There must be a better way, but what is it?
    2) The 5GHz extended network I created in (1) comes up on channel 36. How can I change this?
    3) I want the extender to only "listen" on 2.4GHz and only "talk" on 5GHz.  How can I do this?
    4) Is it me, or are the keyhole slots on the base (for wall mounting) really the wrong way up?

    The RE6500 lets you repeat the wireless signal of any access point or router to provide Internet connectivity in hard to reach areas through a wireless connection on the 2.4 GHz or 5 GHz frequency band. You can't change the channel. You can disable the SSID broadcast by accessing the user interface of the extender. The link shows an RE1000 but accesing it is just the same. 
    Title: Accessing the web-based setup page of the Linksys range extender
    Yes, you can wall mount the RE 6500. 

  • Difference between XML Publisher and Other tools like Aventx

    Hi,
    Please bear with my newbie question. From all the XMLP documentation that I have read, it seems like XMLP is the tool that I would need to distribute my ERP information either through print/fax/email etc. However, I have also been hearing about tools like Aventx which is a layer above XMLP and helps in delivering documents through fax/email etc.
    What basically is the difference between XMLP and these other tools? Can I not just have XMLP sitting on top of my ERP and have my documents delivered without investing in these other 3rd party tools?
    Thanks,
    itzmey

    Hi Itzmey
    THe short answer is yes you could avoid the 3rd parties but, there is always a but. XMLP with extract the data, format the data and generate the ouput all completely integrated with the rest of the Apps techstack. However for the delivery you are going to have to write some custom code to get the documents out of the system i.e. we have not integrated the delivery of docs with the conc manager yet ... no I dont have a timeline at the moment. I wrote a series of articles on the blog about delivering from EBS http://blogs.oracle.com/xmlpublisher. Its not that tough but its a custom solution.
    AventX and others fill that gap we have admirably. Yes, its a thrid party solution but its a very well thought out and integrated solution that they will support you on, etc.
    So its up to you, custom or third party.
    Regards, Tim

  • Difference between Pre-Calculated Queries in BI 7.0 and BW 3.5

    Hi
    Can somebody tell me the difference between pre-calculated queries (web templates) in BI 7.0 and BW 3.5? Is there any difference in Reporting Agent functionality in creating or scheduling the queries?
    Thanks in advance.

    hi kashi
    u could have searched forum with u r question
    anyway go thru following links
    <b>/community [original link is broken]
    Difference in Delta between BW 3.5 and BI 7.0
    /message/2927917#2927917 [original link is broken]
    How much difference between BW 3.5 and BI 7.0?

  • Difference between formating with *#7370# and 3 ke...

    I know I'm a bit offtopic here, but the thread where I should have posted these questions is locked (the sticky about how to format a smartphone) and I didn't want to open a new topic as long as discussions in this thread got where I wanted. So, here are my questions:
    (1) Is there any difference between the *#7370# code and the 3 key format method as concerns their action and final result on the phone?
    (2) Does the 3 key format method work on every S60 phone, including the newest S60 3rd edition ones?
    Thanks in advance for the answers.Message Edited by mohjo on 14-Dec-2006
    12:22 PM

    14-Dec-2006
    08:46 PM
    patriciaanne3 wrote:
    The two methods are not identical the 3 key method is the equivalent of a hard reset on ppc whereas the 7370 just deletes settings. I'm not an expert but this is how an expert advised me.
    I'm pretty sure the *#7370# is the same as the three keys where as the *#7780# would be the soft reset to delete setting etc. Try it and see if you like
    Is that an N95 in your pocket or are you just pleased to see me?!?
    Life's too important to take seriously.
    Nokias I've owned 3210, 3310, 6100, 7650, 6600, 6680, 6630, N80, N95
    I'm a 26 year old boy BTW

  • I have a problem with my MacBook Pro is the almost of my app not working at all like a app store and terminal and other important apps please if u can help me as fast as you can cuz i don't wanna format it that's why am on Mac now not win ?

    i have a problem with my MacBook Pro is the almost of my app not working at all like a app store and terminal and other important apps please if u can help me as fast as you can cuz i don't wanna format it that's why am on Mac now not win ?

    Abdussalam.A,
    you mentioned that Terminal does not work at all for your MacBook Pro. What currently happens when you run Terminal? In what way does it not work?

  • What's the difference between CoBuilder and other developmen​t tools?

    Is there any more excellent features about CoBuilder?
    or What's the difference between CoBuilder and other development tools?
    I just want to know more about it.
    Thanks!

    One more thing, if you do not have the hard drive icon on the desktop you can get it there by:
    click on the desktop so the menu bar says Finder next to the apple logo, click Finder, then Preferences, General, Show These Items on desktop and check the hard disks:
    That makes life a lot easier when you want to find out information.
    Ralph

  • Report Generate to File PDF, HTML,Excel and Others Format

    Dear Experts,
    I am using Oracle 9i and Developer 6i. How I convert report in PDF, HTML, Excel and others format after generating the report. When i try to generate, then giving the following error message:
    REP-0999: Unimplemented Error.
    How can I solve it, Please help me.

    Do the column headings display ok but the data does not?
    If so it may be related to the font size. i.e. the whole report may not fit on the page when scaled for pdf output.

  • My location service is not working from the day one the response is that (cannot able to determine the location) .What can i need to do to see my location in maps and other application even the location services is enabled in the settings?

    From the day one the response is that (cannot able to determine the location) while using ios5.1 .What can i need to do to see my location in maps and other application even the location services is enabled in the settings?.Which means that is there is any problem in my ipad ? currently running on IOS 6.

    Your location is determined from a location database which contains the MAC addresses of routers and their physical location. A MAC address is a unique number which is built-in to all network devices when manufactured. The database is built and updated by actually driving around and mapping router locations.
    Since you just moved the location of your router has not been updated in the database and when you use Maps you will see your old location.
    If you go outside your house you can be correctly located because your iPod sees other routers which are in the location database. Note that you do not need to be connected to a router for your iPod to see it and obtain its MAC address.

  • Upgraded to Maverick. Now cannot connect to wifi. All my other devices will connect. Have rest wireless hot spot switch and cable modem. Other devices still connect but MacPro does not. MacPro wireless is self assigning an IP address blocking access.

    Upgraded to Maverick. Now cannot connect to wifi. All my other devices will connect. Have rest wireless hot spot switch and cable modem. Other devices still connect but MacPro does not. MacPro wireless is self assigning an IP address blocking access. It will connect if I connect to my iPhone hot spot via wifi. Any ideas?

    If you follow this video you'll see how to delete your WiFi AP from the OS, this will allow you to select it again which I feel will correct your problem.
    https://app.box.com/s/fe7v7h7kywjr23spumqp

  • What are the differences between Oracle and other NoSQL database

    Hi all,
    I would like to know what the differences between Oracle and other NoSQL database are.
    When and why should we use Oracle?
    Is Oracle NoSQL database link with Big Data Appliance?
    Can we use map-reduce on a single personal computer? How should we install Oracle NoSQL database to use map reduce on a single personal computer?
    Do we also have eventual consistency with Oracle NoSQL database? Can we lose data if master node fails?
    Are transactions ACID with Oracle NoSQL database? How can we prove it?
    Thanks.

    893771 wrote:
    Hi all,
    I would like to know what the differences between Oracle and other NoSQL database are.
    When and why should we use Oracle?I suggest that you start here:
    http://www.oracle.com/technetwork/database/nosqldb/overview/index.html
    Is Oracle NoSQL database link with Big Data Appliance?Yes, Oracle NoSQL Database will be a component of the Big Data Appliance.
    Can we use map-reduce on a single personal computer? How should we install Oracle NoSQL database to use map reduce on a single personal computer?Yes, I believe you can run M/R on a single computer. Consult the various pieces of documentation available on the web. You may run Oracle NoSQL Database on the same computer that you are running M/R on, but it is likely that they will compete for CPU and IO resources and therefore performance may suffer.
    Do we also have eventual consistency with Oracle NoSQL database? Yes.
    Can we lose data if master node fails?If you run Oracle NoSQL Database with the default (recommended) durability settings, then if the master fails, a new one will be elected and data is not lost.
    Are transactions ACID with Oracle NoSQL database? How can we prove it?Yes, each operation is executed in an ACID transaction. The API has the concept of "multi" operations which allow the caller to perform multiple operations on sets of records with the same major key, but different minor keys. Those operations are also performed within a transaction.
    Charles Lamb

  • Pros and Cons of using REST over JMS (and other technologies)

    Hey all,
    I am working on a project where we were using JMS initially to send messages between servers. Our front end servers have a RESTful API and use JEE6, with EJB 3.1 entity beans connected to a mysql database and so forth. The back end servers are more like "agents" so to speak.. we send some work for them to do, they do it. They are deployed in GlassFish 3.1 as well, but initially I was using JMS to listen to messages. I learned that JMS onMessage() is not threaded, so in order to facilitate handling of potentially hundreds of messages at once, I had to implement my own threading framework. Basically I used the Executor class. I could have used MDBs, but they are a lot more heavyweight than I needed, as the code within the onMessage was not using any of the container services.
    We ran into other issues, such as deploying our app in a distributed architecture in the cloud like EC2 was painful at best. Currently the cloud services we found don't support multi-cast so the nice "discover" feature for clustering JMS and other applications wasn't going to work. For some odd reason there seems to be little info on building out a scalable JEE application in the cloud. Even the EC2 techs, and RackSpace and two others had nobody that understood how to do it.
    So in light of this, plus the data we were sending via JMS was a number of different types that had to all be together in a group to be processed.. I started looking at using REST. Java/Jersey (JAX-RS) is so easy to implement and has thus far had wide industry adoption. The fact that our API is already using it on the front end meant I could re-use some of the representations on the back end servers, while a few had to be modified as our public API was not quite needed in full on the back end. Replacing JMS took about a day or so to put the "onmessage" handler into a REST form on the back end servers. Being able to submit an object (via JAXB) from the front servers to the back servers was much nicer to work with than building up a MapMessage object full of Map objects to contain the variety of data elements we needed to send as a group to our back end servers. Since it goes as XML, I am looking at using gzip as well, which should compress it by about 90% or so, making it use much less bandwidth and thus be faster. I don't know how JMS handles large messages. We were using HornetQ server and client.
    So I am curious what anyone thinks.. especially anyone that is knowledgeable with JMS and may understand REST as well. What benefits do we lose out on via JMS. Mind you, we were using a single queue and not broadcasting messages.. we wanted to make sure that one and only one end server got the message and handled it.
    Thanks..look forward to anyone's thoughts on this.

    851827 wrote:
    Thank you for the reply. One of the main reasons to switch to REST was JMS is strongly tied to Java. While I believe it can work with other message brokers that other platforms/languages can also use, we didn't want to spend more time researching all those paths. REST is very simple, works very well and is easy to implement in almost any language and platform. Our architecture is basically a front end rest API consumed by clients, and the back end servers are more like worker threads. We apply a set of rules, validations, and such on the front end, then send the work to be done to the back end. We could do it all in one server tier, but we also want to allow other 3rd parties to implement the "worker" server pieces in their own domains with their own language/platform of choice. Now, with this model, they simply provide a URL to send some REST calls to, and send some REST calls back to our servers.well, this sounds like this would be one of those requirements which might make jms not a good fit. as ejp mentioned, message brokers usually have bindings in multiple languages, so jms does not necessarily restrict you from using other languages/platforms as the worker nodes. using a REST based api certainly makes that more simple, though.
    As for load balancing, I am not entirely sure how glassfish or JBoss does it. Last time I did anything with scaling, it involved load balancers in front of servers that were session/cookie aware for stateful needs, and could round robin or based on some load factor on each server send requests to appropriate servers in a cluster. If you're saying that JBoss and/or GlassFish no longer need that.. then how is it done? I read up on HornetQ where a request sent to one ip/hornetq server could "discover" other servers in a cluster and balance the load by sending requests to other hornetq servers. I assume this is how the JEE containers are now doing it? The problem with that to me is.. you have one server that is loaded with all incoming traffic and then has to resend it on to other servers in the cluster. With enough load, it seems that the glassfish or jboss server become a load balancer and not doing what they were designed to do.. be a JEE container. I don't recall now if load balancing is in the spec or not..I would think it would not be required to be part of a container though, including session replication and such? Is that part of the spec now?you are confusing many different types of scaling. different layers of the jee stack scale in different ways. you usually scale/load balance at the web layer by putting a load balancer in front of your servers. at the ejb layer, however, you don't necessarily need that. in jboss, the client-side stub for invoking remote ejbs in a cluster will actually include the addresses for all the boxes and do some sort of work distribution itself. so, no given ejb server would be receiving all the incoming load. for jms, again, there are various points of work to consider. you have the message broker itself which is scaled/load balanced in whatever fashion it supports (don't know many details on actual message broker impls). but, for the mdbs themselves, each jee server is pretty independent. each jee server in the cluster will start a pool of mdbs and setup a connection to the relevant queue. then, the incoming messages will be distributed to the various servers and mdbs accordingly. again, no single box will be more loaded than any other.
    load balancing/clustering is not part of the jee "spec", but it is one of the many features that a decent jee server will handle for you. the point of jee was to specify patterns for doing work which, if followed, allow the app server to do all the "hard" parts. some of those features are required (transactions, authentication, etc), and some of those features are not (clustering, load-balancing, other robustness features).
    I still would think dedicated load balancers, whether physical hardware or virtual software running in a cloud/VM setup would be a better solution for handling load to different tiers?like i said, that depends on the tier. makes sense in some situations, not others. (for one thing, load-balancers tend to be http based, so they don't work so well for non-http protocols.)

Maybe you are looking for

  • MacBook Pro heating up and fans at full speed

    MacBook Pro heating up and gets extremely hot and fans constantly at full speed after upgrading to Yosemite 10.10 without even launching any applicaiton previously I was on Mavericks, I checked Activity monitor and a process called kexts is always ru

  • Aperture 3.0 Update in "Software Update"

    Just downloaded and installed it. But it doesn't look like a fix for any of the major issues. Haven't tried ti yet but here is a screen grab after the install: [IMG]http://farm3.static.flickr.com/2730/4365011237d5b688b55do.png[/IMG]

  • Facetime opens when I end a phone call

    Hi. I'm running iOS 7.1.2 on my iPhone 4. Recently I noticed this strange behaviour. It does not happen with all phone calls, but it already happened twice since yesterday, I receive a phone call and once I hang up I'm sent to the iPhone's main scree

  • Exchange 2007 New Install Error - Read only MultiValuedProperty does not support this operation

    Existing Server/Exchange 2003 environment. New 2003 R2 x64 server fully patched and updated with no other apps installed attempting to install Exchange 2007 SP2. Initially I was getting the error "Could not find the default Administrative Group 'Exch

  • Trying the stop the "Adobe PDF – Security" popup message

    I'm using MS-Access to create multiple PDF reports, occasionally the whole process stops because of the "Adobe PDF – Security" popup message asking to "Select Document Components to Encrypt".  We do not encrypt any of the PDF documents, and always hi