直接贴代码了, 具体的和ibm 门户完全关联,使用atom 。主要是获得元素的属性值的时候遇到了一些问题,本来使用xpath 的基本形式(/feed/entry/tile/@type)没有问题的,但是/feed/entry/id的属性使用了命名空间,按照上面的模式都不成功,最后只好使用qname形式的参数获得属性值,这基本花了半天的时间才解决。
写道
package test;
import java.io.InputStream;
import java.net.URISyntaxException;
import javax.xml.namespace.QName;
import org.apache.abdera.Abdera;
import org.apache.abdera.model.Document;
import org.apache.abdera.model.Element;
import org.apache.abdera.model.Entry;
import org.apache.abdera.model.Feed;
import org.apache.abdera.parser.Parser;
import org.apache.abdera.protocol.client.AbderaClient;
import org.apache.abdera.protocol.client.ClientResponse;
import org.apache.abdera.xpath.XPath;
import org.apache.commons.httpclient.UsernamePasswordCredentials;
public class NewTesta {
/**
* @param args
*/
public static void main(String[] args) {
NewTesta newTest = new NewTesta();
try {
newTest.getPageInfo();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void getPageInfo() throws Exception {
Abdera abdera = new Abdera();
AbderaClient client = new AbderaClient(abdera);
client.usePreemptiveAuthentication(true);
try {
client.addCredentials("http://127.0.0.1:10040/wps/myportal", null,
null, new UsernamePasswordCredentials("admin", "password"));
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 替换为具体的唯一标识 oid:6_CGAH47L00O2V002N5SQ0US3867
ClientResponse response1 = client
.get("http://127.0.0.1:10040/wps/mycontenthandler?uri=cm:oid:6_CGAH47L00O2V002N5SQ0US3867");
Parser parser = Abdera.getNewParser();
InputStream in = response1.getInputStream();
Document<Feed> doc = parser.parse(in);
Feed feed = doc.getRoot();
Entry entry = feed.getEntries().get(0);
System.out.println(entry.getTitle());
System.out.println(entry.getTitleType());
Element theId = entry.getElements().get(1);
XPath xpath = abdera.getXPath();
System.out.println(feed.toString());
org.apache.abdera.parser.stax.FOMIRI o = (org.apache.abdera.parser.stax.FOMIRI) xpath
.selectSingleNode("/a:feed/a:entry/a:id", feed);
QName newQname = new QName(
"http://www.ibm.com/xmlns/prod/websphere/portal/v6.0.1/portal-model",
"uniquename", "portal");
System.out.println(o.getAttributeValue(newQname));
}
}
分享到:
- 2009-06-01 22:21
- 浏览 1306
- 评论(0)
- 论坛回复 / 浏览 (0 / 2167)
- 查看更多
相关推荐
本主题聚焦于如何使用SPI协议在单片机上实现对外部FLASH存储器的读写操作。这里我们将深入探讨SPI接口的基本原理、单片机的SPI配置、外扩FLASH的特性以及读写程序设计的关键点。 1. SPI基本原理: SPI是一种全双工...
这篇文章系列是关于使用FPGA通过SPI对ADC进行配置的系列文章,从原理到代码分析,由浅入深,非常适合学习和参考。本文档涵盖了SPI的基本概念、4线模式和3线模式的SPI配置、FPGA对ADC的SPI配置时序分析等内容。 SPI...
ESP8266模块是一款基于Wi-Fi的微控制器,常用于物联网(IoT)设备的无线通信。在ESP8266的SDK固件开发中,...通过学习和实践提供的SPI使用demo,可以加深对SPI协议的理解,并有效地利用SPI实现与其他硬件设备的高效通信。
### 双机通信通过SPI详解 #### SPI简介 SPI(Serial Peripheral Interface)是一种同步串行接口标准,广泛应用于短距离设备间的高速数据交换场景。它允许一个主设备(Master)与一个或多个从设备(Slave)进行全...
### 全志平台SPI总线驱动的使用和调试方法 #### 1. SPI驱动文件目录 在Linux操作系统中,SPI(Serial Peripheral Interface)驱动的源文件通常被组织在一个特定的目录结构中。对于全志(Allwinner)平台,SPI驱动...
### AX1003 SPI接口使用详解 #### 一、SPI协议概述 SPI(Serial Peripheral Interface),即串行外设接口,是一种高速、全双工、同步通信协议,主要用于微控制器与外部设备之间的数据交换。它由一个主设备和一个或...
在这个"spi_spi_SPI验证_"项目中,我们关注的是SPI接口的验证过程,它对于确保SPI设备的正确功能至关重要。SPI验证平台通常是一个综合性的测试环境,用于模拟不同主设备和从设备之间的交互,确保数据传输的准确性和...
SPI(Serial Peripheral ...通过这个DS1302的SPI使用范例,你可以深入理解SPI通信协议的原理,掌握如何在实际项目中使用它。同时,这也是学习AVR微控制器编程和SPI通信的好材料,对于提升嵌入式系统开发能力大有裨益。
在这个实验中,我们探讨的是如何让两片单片机通过SPI接口进行数据接收。实验主要涉及以下几个关键知识点: 1. SPI协议基础:SPI是一种全双工、同步、串行通信协议,由一个主设备(Master)控制数据传输,一个或多个...
### AXI_Quad_SPI IP核的关键知识点 ...通过合理的配置和使用,可以实现与外部SPI设备之间的高速数据交换,满足不同应用场景的需求。理解上述关键寄存器的功能和用法对于成功实现基于AXI_Quad_SPI IP核的设计至关重要。
标题提到的"pic单片机spi双机通信"是指在两个PIC单片机之间通过SPI接口进行数据交互。 **SPI工作模式** SPI通信有四种工作模式,由主设备(Master)和从设备(Slave)的时钟极性和时钟相位(CPOL和CPHA)设置决定。...
总之,这个"SPI.rar_28335 spi编程_DSP28335 SPI_spi_tms320f28335 spi"的压缩包提供了关于在TMS320F28335 DSP上使用SPI通信的实例,涵盖了从硬件配置到软件实现的全部步骤。通过学习和分析这个例程,开发者可以掌握...
在STM32F4中,SPI接口通常通过配置GPIO引脚来实现,例如在本例中使用的B11作为CS(Chip Select),B13作为SCLK(Serial Clock),B14作为MISO(Master Input, Slave Output)和B15作为MOSI(Master Output, Slave ...
本压缩包“SPI.zip”包含了关于SPI接口在Vivado中使用的相关资料,特别是SPI接口的代码,这将帮助开发者理解如何在Vivado环境下实现SPI通信。描述中提到这些代码已经过实测,确保了其在Vivado中的可行性,这意味着...
它通过SPI(Serial Peripheral Interface)接口与微控制器进行通信,以存储程序代码、配置数据或其他重要信息。SPI接口是串行通信协议,通常由四个信号线组成:MOSI(主设备输出,从设备输入)、MISO(主设备输入,...
4. **计算SPI值**:根据转化后的数据,可以计算出每个时间段对应的SPI值,从而获得一个反映降水量异常程度的时间序列。 5. **结果分析**:SPI值可以用来识别干旱和湿润事件,例如,SPI值小于-1可能表示严重干旱,而...
- 主设备启动传输:通过设置SCK时钟并拉低NSS(或使用软件管理的CS)开始一次SPI通信。 - 数据交换:在每个时钟周期内,MOSI和MISO进行数据传输。主设备在上升沿发送数据,从设备在下降沿接收;反之,从设备在上升...
SPI(Serial Peripheral Interface)是一种同步串行接口,广泛应用于微...实际操作中,开发者需要对SPI协议有深入理解,并掌握STM8的SPI接口使用方法,同时,通过LED灯的状态实时监控通信效果,确保系统的可靠运行。
SPI(Standardized Precipitation Index,标准化降水指数)是一种广泛使用的气象干旱指数,它通过将连续的降水量数据标准化来评估区域的干旱状况。SPI能够反映出不同时间尺度上的降水异常,从短期的几周到长期的几年...