我在wso2 esb中启用了dss特性,并尝试在esb中部署示例dss文件,这会使dss服务成为故障服务。我在axis2中启用了http、https和vfs传输。如何解决?
<data name="XML_DataService" serviceNamespace="http://ws.wso2.org/dataservice">
<config id="default">
<property name="driverClassName">net.sourceforge.jtds.jdbc.Driver</property>
<property name="url">jdbc:jtds:sqlserver://localhost:1433;databaseName=INTEGDB</property>
<property name="username">admin</property>
<property name="password">password12$</property>
<property name="minIdle">1</property>
<property name="maxActive">10</property>
</config>
<query id="select_all_XML_DATA_query" useConfig="default">
<sql>Select XML_FILENAME,XML_TOUCHPOINT,XML_PROCESS from INTG_JLOG_XML_TBL</sql>
<result element="XML_DATACollection" rowName="XML_DATA">
<element column="XML_FILENAME" name="XML_FILENAME" xsdType="string"/>
<element column="XML_TOUCHPOINT" name="XML_TOUCHPOINT" xsdType="xs:string"/>
<element column="XML_PROCESS" name="XML_PROCESS" xsdType="xs:string"/>
</result>
</query>
<operation name="select_all_XML_DATA_query">
<call-query href="select_all_XML_DATA_query"/>
</operation>
</data>
创建一个名称为{dataservicename}_services.xml(在您的示例中为XML_DataService_services.xml)的XML文件,并添加以下内容。
<serviceGroup>
<service name="XML_DataService">
<Description>test</Description>
<transports>
<transport>https</transport>
<transport>http</transport>
</transports>
</service>
</serviceGroup>
将此文件复制到部署相应.dbs文件的相同位置。($ CARBON_HOME/仓库/部署/服务器/通过)
那么数据服务将只公开给services.xml文件中指定的传输。然而,适当的解决方案将从DSS 3.2.2版本中引入。你可以从这里下载Alpha版本