soaplib之model?
来源:互联网 发布:nsp网络 编辑:程序博客网 时间:2024/05/29 11:32
#小船 2014-12-21整理
#Primitives
from soaplib.core.model.primitive import String
from lxml import etree
parent = etree.Element("parent")
print parent
String.to_parent_element("abcd","tns",parent)
string_element = parent.getchildren()[0]
print etree.tostring(string_element)
print String.from_xml(string_element)
print String.get_type_name()
#print String.get_type_name_ns()
后续研究:
#Arrays
from soaplib.core.model.clazz import Array
from soaplib.core.model.primitive import String
from lxml import etree
parent = etree.Element("parent")
array_serializer = Array(String)
array_serializer.to_parent_element(['a','b','c','d'],'tns',parent)
element=parent[0]
print etree.tostring(element)
print array_serializer.from_xml(element)
class:
# -*- coding: UTF-8 -*-
#class
from soaplib.core.model.primitive import String, Integer
from soaplib.core.model.clazz import ClassModel, Array
from lxml import etree
class Permission(ClassModel):
___namespace__ = "permission"
application = String
feature = String
class User(ClassModel):
__namespace__ = 'user'
userid = Integer
username = String
lastname = String
lastname = String
permissions = Array(Permission)
u = User()
u.username = "bill"
u.permissions = []
p = Permission()
p.application = 'email'
p.feature = 'send'
u.permissions.append(p)
parent = etree.Element('parent')
User.to_parent_element(u,'tns',parent)
element = parent[0]
print etree.tostring(element)
print User.from_xml(element).username
结果:
<ns0:User xmlns:ns0="tns"><ns1:username xmlns:ns1="user">bill</ns1:username><ns2:permissions xmlns:ns2="user"><ns3:Permission xmlns:ns3="None"><ns3:feature>send</ns3:feature><ns3:application>email</ns3:application></ns3:Permission></ns2:permissions></ns0:User>
bill
#Attachment
from soaplib.core.model.binary import Attachment
from lxml import etree
a = Attachment(data='my binary data')
parent = etree.Element('parent')
Attachment.to_parent_element(a,'tns',parent)
element = parent[0]
print etree.tostring(element)
print Attachment.from_xml(element)
print Attachment.from_xml(element).data
# a2 = Attachment(fileName='test.data')
<ns0:retval xmlns:ns0="tns">bXkgYmluYXJ5IGRhdGE=
</ns0:retval>
<soaplib.core.model.binary.Attachment object at 0x01ECFFB0>
my binary data
- soaplib之model?
- soaplib之usermanager
- soaplib之binaryfile
- Convert django model into soaplib model, to expose webservices
- soaplib helloworld.py
- soaplib实现Webservice
- soaplib v2.0.0 HelloWorld
- 用soaplib 创建 WebService
- soaplib webservices的hello world
- Object Model 之 DSL
- MVC 之 model
- ARMulator model之简介
- 自定义model之二
- 自定义Model之三
- Powerdesigner之Check Model
- Swing框架之Model
- Swing框架之Model
- NLP 之 topic model
- android 布局相关知识
- eclipse 解决乱码问题
- 第十七周项目7 电子词典(还有疑问,求解答)
- SurfaceView实现视频播放
- HDU 1860 - Currency Exchange(最短路)
- soaplib之model?
- ssh连接linux
- IO的阻塞与非阻塞、同步与异步以及Java网络IO交互方式
- Change checkbox size WPF
- linux的NFS详细配置方法
- 程序员如何快速准备面试中的算法
- awk 用法(全)
- 工欲善其事,必先利其器-ecplise配置和优化
- c++模板元编程学习笔记(一)