Odoo(OpenERP)服务器支持通过XML-RPC接口访问、操作数据库,基于此可实现与其他系统的交互与集成。
本文是使用Java通过XMLRPC接口操作Odoo数据库的简单示例。本例引用的jar包包括xmlrpc-common-3.1.3.jar, xmlrpc-client-3.1.3.jar和ws-commons-util-1.0.2.jar,如需要,可点击这里下载。
?
package memo.by.weichen;
import java.net.URL;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.xmlrpc.client.XmlRpcClient;
import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
/**
*
* 通过XML-RPC接口访问Odoo数据库
* Test@Odoo 8.0
* by WeiChen
*
*/
public class OdooWSDemo {
public static final String URL = http://127.0.0.1:8069;
public static final String DB = demo;
public static final int USERID = 1;
public static final String PASS = demo;
public static void main(String[] args) throws Exception{
XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl();
XmlRpcClient client = new XmlRpcClient();
config.setServerURL(new URL(String.format(%s/xmlrpc/2/object, URL)));
client.setConfig(config);
// 新建客户
Integer id = (Integer) client.execute(
execute_kw, Arrays.asList(
DB, USERID, PASS, res.partner, create,
Arrays.asList(new HashMap() {
{
put(name, 苏州园区永旺梦乐城);
put(customer, Boolean.TRUE);
}
})));
// 更新客户
client.execute(execute_kw, Arrays.asList(
DB, USERID, PASS,
res.partner, write,
Arrays.asList(
Arrays.asList(id),
new HashMap() {{ put(name, 永旺梦乐城苏州园区店); }}
)
));
// 查找客户
List