在Web浏览器中查看Odata响应

时间:2013-02-03 04:29:10

标签: odata odata4j

大家好
我使用Odata4j创建Odata服务并部署在tomcat中。当我使用芝麻数据浏览器时,我可以看到一个表格(如果我点击THREAD)有标题。 我的问题是什么应该是在网络浏览器中看到相同数据的网址?我想在服务中使用它,所以想知道网址。

如果我在 http://localhost:8888/OdataEx/example.svc 浏览器中输入此内容,我可以看到一些XML

<?xml version="1.0" encoding="utf-8" ?> 
 <service xmlns="http://www.w3.org/2007/app" xml:base="http://localhost:8888/OdataEx/example.svc/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app">
 <workspace>
  <atom:title>Default</atom:title> 
 <collection href="Threads">
  <atom:title>Threads</atom:title> 
  </collection>
  </workspace>
  </service>

和Java代码生成服务是

public class ExampleProducerFactory implements ODataProducerFactory {
  public ODataProducer create(Properties properties) {
    InMemoryProducer producer = new InMemoryProducer("example");
    // expose this jvm's thread information (Thread instances) as an entity-set called "Threads"
    producer.register(Thread.class, Long.class, "Threads", new Func<Iterable<Thread>>() {
      public Iterable<Thread> apply() {
        ThreadGroup tg = Thread.currentThread().getThreadGroup();
        while (tg.getParent() != null)
          tg = tg.getParent();
        Thread[] threads = new Thread[50];
        int count = tg.enumerate(threads, true);
        return Enumerable.create(threads).take(count);
      }
    }, Funcs.method(Thread.class, Long.class, "getId"));
    return producer;
  }
}

2 个答案:

答案 0 :(得分:2)

要查看特定实体集,只需将实体集名称附加到URL即可。例如:

示例服务网址为:http://services.odata.org/OData/OData.svc/

要查看“产品”实体集,请转至:http://services.odata.org/OData/OData.svc/Products

请注意,这也在.svc直接返回的服务文档中进行了描述。每个集合元素都有一个href属性,该属性是指向该集合的相对URL。

答案 1 :(得分:2)

如果要查看浏览器中的数据,只需在.svc之后添加实体集名称即可。您也可以将查询设置为查看过滤数据

示例服务网址为:http://services.odata.org/OData/OData.svc/

http://services.odata.org/OData/OData.svc/entitynameset