[WebService Test]: 4. WSDL

1. 什么是WSDL?

WSDL(web service description language)web服务描述语言,是基于 XML 的用于描述 Web Services 以及如何访问 Web Services 的语言。它是一个XML文档。用于说明一组SOAP消息以及如何交换这些消息。

Web Services 服务提供方通过WSDL(Web Services Description Language) 描述所提供的服务,并将这一描述告知Web Services 注册服务器。注册服务器依据WSDL 的描述,依照UDDI (Universal Description Discovery and Integration) 的协定更新服务目录并在Internet 上发布。用户在使用Web Services 前先向注册服务器发出请求,获得Web Services 提供者的地址和服务接口信息,之后使用SOAP 协议(Simple Object Access Protocol) 与Web Services 提供者建立连接,进行通信。Web Services 的技术主要建立在XML 的规范之上,这保证了这一体系结构的平台无关性、语言无关性和人机交互性能。

( UDDI(universal description discover and intergration)它是一种用于发现和定位服务协议,他把一个服务拆的非常细,但是似乎目前没什么大用)

简单的说,一个web服务发布后。作为一个Web服务调用者,通过网络唯一能看到的就是这个web服务的WSDL,根据一个web服务的wsdl,调用者可以判断出这个web服务都有哪些函数接口,每个函数的参数是什么,返回值是什么。有了这些,才能够构造SOAP报文来调用该Web服务的某个函数接口。

 

2. WSDL作用

WSDL的作用Web services 可把您的应用程序转换为 web 应用程序。

通过使用 XML,可以在应用程序间传送消息。

最大的意义就是不管你使用什么的语言编写的WEB应用,只要有WSDL,便可以自由的调用。

 

3. WSDL 文档结构

WSDL 文档是利用这些主要的元素来描述某个 web service 的:

元素定义
<portType>web service 执行的操作
<message>web service 使用的消息
<types>web service 使用的数据类型
<binding>web service 使用的通信协议

一个 WSDL 文档的主要结构是类似这样的:

<definitions>

<types>
   definition of types........
</types>

<message>
   definition of a message....
</message>

<portType>
   definition of a port.......
</portType>

<binding>
   definition of a binding....
</binding>

</definitions>

WSDL 文档可包含其它的元素,比如 extension 元素,以及一个 service 元素,此元素可把若干个 web services 的定义组合在一个单一的 WSDL 文档中。

 

4. WebService 端口

<portType> 元素是最重要的 WSDL 元素。

它可描述一个 web service、可被执行的操作,以及相关的消息

端口定义了指向某个 web service 的连接点。可以把该元素比作传统编程语言中的一个函数库(或一个模块、或一个类),而把每个操作比作传统编程语言中的一个函数。

操作类型

请求-响应是最普通的操作类型,不过 WSDL 定义了四种类型:

类型定义
One-way此操作可接受消息,但不会返回响应。
Request-response此操作可接受一个请求并会返回一个响应
Solicit-response此操作可发送一个请求,并会等待一个响应。
Notification此操作可发送一条消息,但不会等待响应。

One-Way 操作

一个 one-way 操作的例子:

<message name="newTermValues">
   <part name="term" type="xs:string"/>
   <part name="value" type="xs:string"/>
</message>

<portType name="glossaryTerms">
   <operation name="setTerm">
      <input name="newTerm" message="newTermValues"/>
   </operation>
</portType >

在这个例子中,端口 "glossaryTerms" 定义了一个名为 "setTerm" 的 one-way 操作。

这个 "setTerm" 操作可接受新术语表项目消息的输入,这些消息使用一条名为 "newTermValues" 的消息,此消息带有输入参数 "term" 和 "value"。不过,没有为这个操作定义任何输出。

Request-Response 操作

一个 request-response 操作的例子:

<message name="getTermRequest">
   <part name="term" type="xs:string"/>
</message>

<message name="getTermResponse">
   <part name="value" type="xs:string"/>
</message>

<portType name="glossaryTerms">
  <operation name="getTerm">
    <input message="getTermRequest"/>
    <output message="getTermResponse"/>
  </operation>
</portType>

在这个例子中,端口 "glossaryTerms" 定义了一个名为 "getTerm" 的 request-response 操作。

"getTerm" 操作会请求一个名为 "getTermRequest" 的输入消息,此消息带有一个名为 "term" 的参数,并将返回一个名为 "getTermResponse" 的输出消息,此消息带有一个名为 "value" 的参数。

 

5. WSDL 绑定

WSDL 绑定可为 web service 定义消息格式和协议细节。

绑定到 SOAP

一个 请求 - 响应 操作的例子:

<message name="getTermRequest">
   <part name="term" type="xs:string" />
</message>

<message name="getTermResponse">
   <part name="value" type="xs:string" />
</message>

<portType name="glossaryTerms">
  <operation name="getTerm">
      <input message="getTermRequest" />
      <output message="getTermResponse" />
  </operation>
</portType>

<binding type="glossaryTerms" name="b1">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
  <operation>
    <soap:operation
     soapAction="http://example.com/getTerm" />
    <input>
      <soap:body use="literal" />
    </input>
    <output>
      <soap:body use="literal" />
    </output>
  </operation>
</binding>

binding 元素有两个属性 - name 属性和 type 属性。

name 属性定义 binding 的名称,而 type 属性指向用于 binding 的端口,在这个例子中是 "glossaryTerms" 端口。

soap:binding 元素有两个属性 - style 属性和 transport 属性。

style 属性可取值 "rpc" 或 "document"。在这个例子中我们使用 document。transport 属性定义了要使用的 SOAP 协议。在这个例子中我们使用 HTTP。

operation 元素定义了每个端口提供的操作符。

对于每个操作,相应的 SOAP 行为都需要被定义。同时您必须如何对输入和输出进行编码。在这个例子中我们使用了 "literal"。

 

6. 完整WSDL语法

<wsdl:definitions name="nmtoken"? targetNamespace="uri">

    <import namespace="uri" location="uri"/> *
	
    <wsdl:documentation .... /> ?

    <wsdl:types> ?
        <wsdl:documentation .... /> ?
        <xsd:schema .... /> *
    </wsdl:types>

    <wsdl:message name="ncname"> *
        <wsdl:documentation .... /> ?
        <part name="ncname" element="qname"? type="qname"?/> *
    </wsdl:message>

    <wsdl:portType name="ncname"> *
        <wsdl:documentation .... /> ?
        <wsdl:operation name="ncname"> *
            <wsdl:documentation .... /> ?
            <wsdl:input message="qname"> ?
                <wsdl:documentation .... /> ?
            </wsdl:input>
            <wsdl:output message="qname"> ?
                <wsdl:documentation .... /> ?
            </wsdl:output>
            <wsdl:fault name="ncname" message="qname"> *
                <wsdl:documentation .... /> ?
            </wsdl:fault>
        </wsdl:operation>
    </wsdl:portType>

    <wsdl:serviceType name="ncname"> *
        <wsdl:portType name="qname"/> +
    </wsdl:serviceType>

    <wsdl:binding name="ncname" type="qname"> *
        <wsdl:documentation .... /> ?
        <-- binding details --> *
        <wsdl:operation name="ncname"> *
            <wsdl:documentation .... /> ?
            <-- binding details --> *
            <wsdl:input> ?
                <wsdl:documentation .... /> ?
                <-- binding details -->
            </wsdl:input>
            <wsdl:output> ?
                <wsdl:documentation .... /> ?
                <-- binding details --> *
            </wsdl:output>
            <wsdl:fault name="ncname"> *
                <wsdl:documentation .... /> ?
                <-- binding details --> *
            </wsdl:fault>
        </wsdl:operation>
    </wsdl:binding>

    <wsdl:service name="ncname" serviceType="qname"> *
        <wsdl:documentation .... /> ?
        <wsdl:port name="ncname" binding="qname"> *
            <wsdl:documentation .... /> ?
            <-- address details -->
        </wsdl:port>
    </wsdl:service>

</wsdl:definitions>
2025-10-10 10:31:48.084 [main] INFO c.sinosoft.pic.sinopicdeal.test.aa - 短信平台 -- 异常:org.apache.cxf.service.factory.ServiceConstructionException javax.xml.ws.WebServiceException: org.apache.cxf.service.factory.ServiceConstructionException at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:360) at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:349) at javax.xml.ws.Service.getPort(Service.java:169) at com.sinosoft.pic.sinopicdeal.webService.SendSMSServiceImplService.getSendSMSServiceImplPort(SendSMSServiceImplService.java:72) at com.sinosoft.pic.sinopicdeal.test.aa.main(aa.java:66) Caused by: org.apache.cxf.service.factory.ServiceConstructionException at org.apache.cxf.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:360) at org.apache.cxf.service.factory.AbstractServiceFactoryBean.initializeDataBindings(AbstractServiceFactoryBean.java:87) at org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.buildServiceFromWSDL(ReflectionServiceFactoryBean.java:425) at org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:527) at org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:262) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:199) at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:103) at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:91) at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:158) at org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:142) at org.apache.cxf.jaxws.ServiceImpl.createPort(ServiceImpl.java:492) at org.apache.cxf.jaxws.ServiceImpl.getPort(ServiceImpl.java:358) ... 4 more Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 6 counts of IllegalAnnotationExceptions 两个类具有相同的 XML 类型名称 "{http://webservice.sinosoft.com/}sendSMSResponse"。请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称。 this problem is related to the following location: at com.sinosoft.pic.sinopicdeal.webService.jaxws_asm.SendSMSResponse this problem is related to the following location: at com.sinosoft.pic.sinopicdeal.webService.SendSMSResponse at public javax.xml.bind.JAXBElement com.sinosoft.pic.sinopicdeal.webService.ObjectFactory.createSendSMSResponse(com.sinosoft.pic.sinopicdeal.webService.SendSMSResponse) at com.sinosoft.pic.sinopicdeal.webService.ObjectFactory 两个类具有相同的 XML 类型名称 "{http://webservice.sinosoft.com/}sendSMSListResponse"。请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称。 this problem is related to the following location: at com.sinosoft.pic.sinopicdeal.webService.jaxws_asm.SendSMSListResponse this problem is related to the following location: at com.sinosoft.pic.sinopicdeal.webService.SendSMSListResponse at public com.sinosoft.pic.sinopicdeal.webService.SendSMSListResponse com.sinosoft.pic.sinopicdeal.webService.ObjectFactory.createSendSMSListResponse() at com.sinosoft.pic.sinopicdeal.webService.ObjectFactory 两个类具有相同的 XML 类型名称 "{http://webservice.sinosoft.com/}failedSendResponse"。请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称。 this problem is related to the following location: at com.sinosoft.pic.sinopicdeal.webService.jaxws_asm.FailedSendResponse this problem is related to the following location: at com.sinosoft.pic.sinopicdeal.webService.FailedSendResponse at public javax.xml.bind.JAXBElement com.sinosoft.pic.sinopicdeal.webService.ObjectFactory.createFailedSendResponse(com.sinosoft.pic.sinopicdeal.webService.FailedSendResponse) at com.sinosoft.pic.sinopicdeal.webService.ObjectFactory
10-11
异常分析:11:07:40.137 [main] DEBUG org.apache.cxf.common.logging.LogUtils - Using org.apache.cxf.common.logging.Slf4jLogger for logging. 11:07:40.294 [main] DEBUG org.apache.cxf.endpoint.dynamic.DynamicClientFactory - Creating client from WSDL https://znwc.cnooc/xcoa/services/WsOaSystemService?wsdl 11:07:40.368 [main] DEBUG org.apache.cxf.resource.DefaultResourceManager - resolving resource <org.apache.cxf.wsdl11.WSDLManagerImpl/bus> type <interface org.apache.cxf.Bus> 11:07:40.369 [main] DEBUG org.apache.cxf.resource.DefaultResourceManager - resolving resource <null> type <interface org.apache.cxf.Bus> 11:08:30.898 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' has been (re)configured for plain http. 11:08:30.908 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - No Trust Decider configured for Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' 11:08:30.910 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - No Auth Supplier configured for Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' 11:08:30.911 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' has been configured for plain http. 11:08:30.921 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - registering incoming observer: org.apache.cxf.transport.TransportURIResolver$1@34a97744 11:08:31.184 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - The location of the key store has not been set via a system parameter or through configuration so the default value of C:\Users\smartdot/.keystore will be used. 11:08:31.188 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - The key store password has not been set via a system property or through configuration, reading data from the keystore will fail. 11:08:31.191 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - The key password has not been set via a system property or through configuration, reading data from the keystore will fail. 11:08:31.193 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - The keystore type has not been set in configuration so the default value of JKS will be used. 11:08:31.598 [main] DEBUG org.apache.cxf.resource.DefaultResourceManager - resolving resource <C:\Users\smartdot/.keystore> as stream 11:08:31.693 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - No default keystore C:\Users\smartdot/.keystore 11:08:31.696 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - The location of the trust store has not been set via a system parameter or through configuration so the default value of null will be used. 11:08:31.698 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - TRUST_STORE_PASSWORD_NOT_SET 11:08:31.700 [main] DEBUG org.apache.cxf.transport.https.SSLUtils - The trust store type has not been set in configuration so the default value of JKS will be used. 11:08:31.767 [main] DEBUG org.apache.cxf.transport.https.HttpsURLConnectionFactory - The cipher suites have been set to [TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384, TLS_DHE_RSA_WITH_AES_256_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDH_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_DSS_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_DSS_WITH_AES_128_GCM_SHA256, TLS_EMPTY_RENEGOTIATION_INFO_SCSV]. 11:08:33.321 [main] DEBUG org.apache.cxf.transport.http.Headers - Accept: */* 11:08:33.322 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - No Trust Decider for Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit'. An affirmative Trust Decision is assumed. 11:10:47.826 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' has been (re)configured for plain http. 11:10:47.830 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - No Trust Decider configured for Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' 11:10:47.832 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - No Auth Supplier configured for Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' 11:10:47.834 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit' has been configured for plain http. 11:10:47.836 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - registering incoming observer: org.apache.cxf.transport.TransportURIResolver$1@62d0ac62 11:10:47.841 [main] DEBUG org.apache.cxf.transport.http.Headers - Accept: */* 11:10:47.842 [main] DEBUG org.apache.cxf.transport.http.HTTPConduit - No Trust Decider for Conduit '{http://cxf.apache.org}TransportURIResolver.http-conduit'. An affirmative Trust Decision is assumed. [Fatal Error] WsOaSystemService?wsdl=WsOaSystemService.wsdl:6:3: The element type "hr" must be terminated by the matching end-tag "</hr>". [2025-07-16 11:12:00] 错误: 服务调用失败 异常类型: ServiceConstructionException 错误详情: [Ljava.lang.String;@55caeb35 完整堆栈追踪: org.apache.cxf.service.factory.ServiceConstructionException: Failed to create service. at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:76) at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:319) at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:245) at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:238) at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.createClient(DynamicClientFactory.java:192) at com.hd.xcoa.project.BasicAuthWebServiceClient.createSecureClient(BasicAuthWebServiceClient.java:94) at com.hd.xcoa.project.BasicAuthWebServiceClient.main(BasicAuthWebServiceClient.java:33) Caused by: javax.wsdl.WSDLException: WSDLException (at /wsdl:definitions/wsdl:import): faultCode=PARSER_ERROR: Problem parsing 'http://znwc.cnooc/xcoa/services/WsOaSystemService?wsdl=WsOaSystemService.wsdl'.: org.xml.sax.SAXParseException: The element type "hr" must be terminated by the matching end-tag "</hr>". at com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLReaderImpl.java:2198) at com.ibm.wsdl.xml.WSDLReaderImpl.parseImport(WSDLReaderImpl.java:435) at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:312) at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2352) at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2338) at org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:255) at org.apache.cxf.wsdl11.WSDLManagerImpl.getDefinition(WSDLManagerImpl.java:165) at org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:74) ... 6 more Caused by: org.xml.sax.SAXParseExceptionpublicId: http://znwc.cnooc/xcoa/services/WsOaSystemService?wsdl=WsOaSystemService.wsdl; systemId: http://znwc.cnooc/xcoa/services/WsOaSystemService?wsdl=WsOaSystemService.wsdl; lineNumber: 6; columnNumber: 3; The element type "hr" must be terminated by the matching end-tag "</hr>". at org.apache.xerces.parsers.DOMParser.parse(Unknown Source) at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source) at com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(WSDLReaderImpl.java:2188) ... 13 more
07-17
请分析下面代码:server: port: 8088 tomcat: max-http-form-post-size: -1 servlet: context-path: /wo spring: application: name: wo-system cloud: nacos: discovery: server-addr: 10.105.191.35:8848 namespace: PQS_TEST group: DEFAULT_GROUP datasource: type: com.alibaba.druid.pool.DruidDataSource url: jdbc:p6spy:oracle:thin:@(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.105.191.39)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = SJWO))) username: SJWOUSER_T password: SJWOUSERT12345678 driver-class-name: com.p6spy.engine.spy.P6SpyDriver connection-test-query: SELECT * from dual druid: test-on-borrow: false test-while-idle: false initial-size: 2 min-idle: 1 max-active: 10 jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 # cache: # type: caffeine #上传附件的大小限制 servlet: multipart: max-file-size: 20MB max-request-size: 20MB enabled: true #邮件 thymeleaf: enabled: true cache: false encoding: UTF-8 prefix: classpath:/mail-template/ suffix: .html servlet: content-type: text/html # p6spy sql打印 decorator: datasource: enabled: true # 是否启用 knife4j: enable: false production: false feign: client: config: default: connect-timeout: 5000 read-timeout: 30000 server-name: jyong-server fmcode-name: fmcode global-config: appName: wo-system jyongSysName: wo-system xxl: sso: server: http://10.100.86.13:8087/sso logout: path: /logout excluded: paths: /doc.html/**,/swagger-resources,/v2/api-docs,/webjars/**,/api/**, redis: address: redis://10.100.86.13:6379 job: admin: addresses: http://10.105.191.35:13001/xxl-job-admin executor: address: appname: wo-job ip: logpath: F:\EpmsFile\applogs\xxl-job\jobHandler logretentiondays: 15 port: 14007 accessToken: default_token mybatis-plus: type-aliases-package: com.sjsemi.app.wo.domain mapper-locations: classpath*:/mappers/*.xml wo: dps-push-date: '2024/03/26 12:00:00' mes-wtc: webservice: wsdl-url: http://10.100.86.13:13002/TuxedoConnectionService/services/CommonMsgService req-timeout: 120 # 120s j2-mes: server-id: FABJ2A mail-box: TPSJOHS msgHeader: srvAddr: //10.100.86.13:13002 #cancel_wo_url: http://10.100.86.13:8401/prms/api/cancelSjWoInfoByWoNo cancel_wo_url: http://10.101.60.14:8081/prms/api/cancelSjWoInfoByWoNo
09-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值