pom.xml
@@ -582,6 +582,32 @@ </nonFilteredFileExtensions> </configuration> </plugin> <!-- CXF Codegen Pluginï¼æ ¹æ® WSDL çæ Java 客æ·ç«¯ä»£ç --> <plugin> <groupId>org.apache.cxf</groupId> <artifactId>cxf-codegen-plugin</artifactId> <version>3.5.5</version> <!-- ä½ å¯ä»¥ä½¿ç¨ææ°ç稳å®çæ¬ï¼æ¯å¦ 3.5.6 / 4.x --> <executions> <execution> <id>generate-sources</id> <phase>generate-sources</phase> <goals> <goal>wsdl2java</goal> </goals> <configuration> <!-- æå®çæç Java ç±» æ¾å¨åªä¸ªç®å½ä¸ï¼éå¸¸æ¯ target/generated-sources/cxfï¼ --> <sourceRoot>${project.basedir}/target/generated-sources/cxf</sourceRoot> <wsdlOptions> <wsdlOption> <wsdl>${basedir}/src/main/resources/wsdl/WebService.asmx.wsdl</wsdl> <!-- æè ç´æ¥ä½¿ç¨ WSDL çç½ç»å°å --> <!-- <wsdl>http://10.101.0.182:8002/MesWebService/WebService.asmx?wsdl</wsdl> --> </wsdlOption> </wsdlOptions> </configuration> </execution> </executions> </plugin> </plugins> <resources> <resource> src/main/java/org/jeecg/modules/wms/CxfClientUtil.java
ÎļþÒÑɾ³ý src/main/java/org/jeecg/modules/wms/ObjectFactory.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,132 @@ package org.jeecg.modules.wms; import org.jeecg.modules.wms.dto.*; import org.jeecg.modules.wms.request.*; import org.jeecg.modules.wms.request.WebServiceSendItem; import javax.xml.bind.annotation.XmlRegistry; /** * This object contains factory methods for each * Java content interface and Java element interface * generated in the org.tempuri package. * <p>An ObjectFactory allows you to programatically * construct new instances of the Java representation * for XML content. The Java representation of XML * content can consist of schema derived interfaces * and classes representing the binding of schema * type definitions, element declarations and model * groups. Factory methods for each of these are * provided in this class. * */ @XmlRegistry public class ObjectFactory { /** * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.tempuri * */ public ObjectFactory() { } /** * Create an instance of {@link ReceiveMESScanItemList } * */ public ReceiveMESScanItemList createReceiveMESScanItemList() { return new ReceiveMESScanItemList(); } /** * Create an instance of {@link ArrayOfWebServiceSendItem } * */ public ArrayOfWebServiceSendItem createArrayOfWebServiceSendItem() { return new ArrayOfWebServiceSendItem(); } /** * Create an instance of {@link ReceiveMESScanItemListResponse } * */ public ReceiveMESScanItemListResponse createReceiveMESScanItemListResponse() { return new ReceiveMESScanItemListResponse(); } /** * Create an instance of {@link WSResponse } * */ public WSResponse createWSResponse() { return new WSResponse(); } /** * Create an instance of {@link DeliOrderDelete } * */ public DeliOrderDelete createDeliOrderDelete() { return new DeliOrderDelete(); } /** * Create an instance of {@link DeliOrderDeleteResponse } * */ public DeliOrderDeleteResponse createDeliOrderDeleteResponse() { return new DeliOrderDeleteResponse(); } /** * Create an instance of {@link ReceiveReservation } * */ public ReceiveReservation createReceiveReservation() { return new ReceiveReservation(); } /** * Create an instance of {@link WebReservationOrder } * */ public WebReservationOrder createWebReservationOrder() { return new WebReservationOrder(); } /** * Create an instance of {@link ReceiveReservationResponse } * */ public ReceiveReservationResponse createReceiveReservationResponse() { return new ReceiveReservationResponse(); } /** * Create an instance of {@link HelloWorld } * */ public HelloWorld createHelloWorld() { return new HelloWorld(); } /** * Create an instance of {@link HelloWorldResponse } * */ public HelloWorldResponse createHelloWorldResponse() { return new HelloWorldResponse(); } /** * Create an instance of {@link WebServiceSendItem } * */ public WebServiceSendItem createWebServiceSendItem() { return new WebServiceSendItem(); } } src/main/java/org/jeecg/modules/wms/WMSWebService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,114 @@ package org.jeecg.modules.wms; import java.net.MalformedURLException; import java.net.URL; import javax.xml.namespace.QName; import javax.xml.ws.WebEndpoint; import javax.xml.ws.WebServiceClient; import javax.xml.ws.WebServiceFeature; import javax.xml.ws.Service; import org.jeecg.modules.wms.service.WebServiceSoap; import org.springframework.stereotype.Component; /** * This class was generated by Apache CXF 3.5.5 * 2025-08-15T16:30:13.500+08:00 * Generated source version: 3.5.5 * */ @Component @WebServiceClient(name = "WebService", wsdlLocation = "file:/D:/work_2025/lxzn-system-xhj/src/main/resources/wsdl/WebService.asmx.wsdl", targetNamespace = "http://tempuri.org/") public class WMSWebService extends Service { public final static URL WSDL_LOCATION; public final static QName SERVICE = new QName("http://tempuri.org/", "WebService"); public final static QName WebServiceSoap = new QName("http://tempuri.org/", "WebServiceSoap"); public final static QName WebServiceSoap12 = new QName("http://tempuri.org/", "WebServiceSoap12"); static { URL url = null; try { url = new URL("file:/D:/work_2025/lxzn-system-xhj/src/main/resources/wsdl/WebService.asmx.wsdl"); } catch (MalformedURLException e) { java.util.logging.Logger.getLogger(WMSWebService.class.getName()) .log(java.util.logging.Level.INFO, "Can not initialize the default wsdl from {0}", "file:/D:/work_2025/lxzn-system-xhj/src/main/resources/wsdl/WebService.asmx.wsdl"); } WSDL_LOCATION = url; } public WMSWebService(URL wsdlLocation) { super(wsdlLocation, SERVICE); } public WMSWebService(URL wsdlLocation, QName serviceName) { super(wsdlLocation, serviceName); } public WMSWebService() { super(WSDL_LOCATION, SERVICE); } public WMSWebService(WebServiceFeature ... features) { super(WSDL_LOCATION, SERVICE, features); } public WMSWebService(URL wsdlLocation, WebServiceFeature ... features) { super(wsdlLocation, SERVICE, features); } public WMSWebService(URL wsdlLocation, QName serviceName, WebServiceFeature ... features) { super(wsdlLocation, serviceName, features); } /** * * @return * returns WebServiceSoap */ @WebEndpoint(name = "WebServiceSoap") public WebServiceSoap getWebServiceSoap() { return super.getPort(WebServiceSoap, WebServiceSoap.class); } /** * * @param features * A list of {@link WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values. * @return * returns WebServiceSoap */ @WebEndpoint(name = "WebServiceSoap") public WebServiceSoap getWebServiceSoap(WebServiceFeature... features) { return super.getPort(WebServiceSoap, WebServiceSoap.class, features); } /** * * @return * returns WebServiceSoap */ @WebEndpoint(name = "WebServiceSoap12") public WebServiceSoap getWebServiceSoap12() { return super.getPort(WebServiceSoap12, WebServiceSoap.class); } /** * * @param features * A list of {@link WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values. * @return * returns WebServiceSoap */ @WebEndpoint(name = "WebServiceSoap12") public WebServiceSoap getWebServiceSoap12(WebServiceFeature... features) { return super.getPort(WebServiceSoap12, WebServiceSoap.class, features); } } src/main/java/org/jeecg/modules/wms/controller/WMSTestController.java
@@ -3,12 +3,18 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.cxf.endpoint.Client; import org.apache.cxf.frontend.ClientProxy; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; import org.apache.cxf.transport.http.HTTPConduit; import org.apache.cxf.transports.http.configuration.HTTPClientPolicy; import org.jeecg.common.api.vo.Result; import org.jeecg.modules.wms.WMSWebService; import org.jeecg.modules.wms.dto.ReceiveMESScanItemListResponse; import org.jeecg.modules.wms.request.ReceiveMESScanItemList; import org.jeecg.modules.wms.service.ReceiveWMSScanItemListService; import org.jeecg.modules.wms.service.WMSWebService; import org.jeecg.modules.wms.service.WebServiceSoap; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -21,6 +27,9 @@ public class WMSTestController { @Value("${webservice.url}") private String url; @Autowired private WMSWebService webService; @ApiOperation(value = "WMSéææµè¯-æ¥æ¶WMSç§»åºç»æ", notes = "WMSéææµè¯-æ¥æ¶WMSç§»åºç»æ") @PostMapping("/testReceiveWMSScanItemList") @@ -37,11 +46,26 @@ @ApiOperation(value = "WMSéææµè¯-HelloWordæµè¯", notes = "WMSéææµè¯-HelloWordæµè¯") @PostMapping("/testHelloWorld") public Result<?> testHelloWorld() { JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setAddress(url); factory.setServiceClass(WMSWebService.class); WMSWebService service = (WMSWebService) factory.create(); String response = service.helloWorld(); return Result.ok(response); // JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); // factory.setAddress(url); // factory.setServiceClass(WebServiceSoap.class); // WebServiceSoap service = (WebServiceSoap) factory.create(); // String response = service.helloWorld(); // return Result.ok(response); WebServiceSoap port = webService.getWebServiceSoap(); // 2. è·å CXF åºå± Client 对象 Client client = ClientProxy.getClient(port); // 3. è·å HTTPConduit å¹¶è®¾ç½®è¶ æ¶ HTTPConduit http = (HTTPConduit) client.getConduit(); HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy(); httpClientPolicy.setConnectionTimeout(10 * 1000); // è¿æ¥è¶ æ¶ 10 ç§ httpClientPolicy.setReceiveTimeout(300 * 1000); // 读åè¶ æ¶ 60 ç§ï¼éç¹ï¼ï¼ http.setClient(httpClientPolicy); String result = port.helloWorld(); return Result.ok(result); } } src/main/java/org/jeecg/modules/wms/dto/DeliOrderDeleteResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,44 @@ package org.jeecg.modules.wms.dto; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="DeliOrderDeleteResult" type="{http://tempuri.org/}WSResponse" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "deliOrderDeleteResult" }) @XmlRootElement(name = "DeliOrderDeleteResponse") @Getter @Setter public class DeliOrderDeleteResponse { @XmlElement(name = "DeliOrderDeleteResult") protected WSResponse deliOrderDeleteResult; } src/main/java/org/jeecg/modules/wms/dto/HelloWorldResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,44 @@ package org.jeecg.modules.wms.dto; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="HelloWorldResult" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "helloWorldResult" }) @XmlRootElement(name = "HelloWorldResponse") @Getter @Setter public class HelloWorldResponse { @XmlElement(name = "HelloWorldResult") protected String helloWorldResult; } src/main/java/org/jeecg/modules/wms/dto/ReceiveMESScanItemListResponse.java
@@ -1,19 +1,40 @@ package org.jeecg.modules.wms.dto; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import java.io.Serializable; import javax.xml.bind.annotation.*; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="ReceiveMESScanItemListResult" type="{http://tempuri.org/}WSResponse" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "receiveMESScanItemListResult" }) @XmlRootElement(name = "ReceiveMESScanItemListResponse") @Getter @Setter @XmlRootElement(name = "ReceiveMESScanItemListResponse") @XmlAccessorType(XmlAccessType.FIELD) public class ReceiveMESScanItemListResponse implements Serializable { @XmlElement(name = "WSResponse") private WSResponse wsResponse; public class ReceiveMESScanItemListResponse { @XmlElement(name = "ReceiveMESScanItemListResult") protected WSResponse receiveMESScanItemListResult; } src/main/java/org/jeecg/modules/wms/dto/ReceiveReservationResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,40 @@ package org.jeecg.modules.wms.dto; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.*; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="ReceiveReservationResult" type="{http://tempuri.org/}WSResponse" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "receiveReservationResult" }) @XmlRootElement(name = "ReceiveReservationResponse") @Getter @Setter public class ReceiveReservationResponse { @XmlElement(name = "ReceiveReservationResult") protected WSResponse receiveReservationResult; } src/main/java/org/jeecg/modules/wms/dto/WSResponse.java
@@ -1,3 +1,4 @@ package org.jeecg.modules.wms.dto; import lombok.Getter; @@ -6,14 +7,40 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import java.io.Serializable; import javax.xml.bind.annotation.XmlType; /** * <p>WSResponse complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType name="WSResponse"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="ErrorCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="ErrorDesc" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @Getter @Setter @XmlAccessorType(XmlAccessType.FIELD) public class WSResponse implements Serializable { @XmlType(name = "WSResponse", propOrder = { "errorCode", "errorDesc" }) public class WSResponse { @XmlElement(name = "ErrorCode") private String errorCode; protected String errorCode; @XmlElement(name = "ErrorDesc") private String errorDesc; protected String errorDesc; } src/main/java/org/jeecg/modules/wms/dto/WebServiceSendItem.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,107 @@ package org.jeecg.modules.wms.dto; import lombok.Getter; import lombok.Setter; import java.math.BigDecimal; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; /** * <p>WebServiceSendItem complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType name="WebServiceSendItem"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="FactoryCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="SkuCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="Align" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="Pallet" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="PackageNo" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="TrackLot" type="{http://www.w3.org/2001/XMLSchema}long"/> * <element name="Series" type="{http://www.w3.org/2001/XMLSchema}long"/> * <element name="MesStockID" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="Quantity" type="{http://www.w3.org/2001/XMLSchema}decimal"/> * <element name="SapTrackLot" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="Section" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="DestSection" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="SupplierCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="SupplierTrackLot" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="StageID" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="Remark" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="OrderCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "WebServiceSendItem", propOrder = { "factoryCode", "skuCode", "align", "pallet", "packageNo", "trackLot", "series", "mesStockID", "quantity", "sapTrackLot", "section", "destSection", "supplierCode", "supplierTrackLot", "stageID", "remark", "orderCode" }) @Getter @Setter public class WebServiceSendItem { @XmlElement(name = "FactoryCode") protected String factoryCode; @XmlElement(name = "SkuCode") protected String skuCode; @XmlElement(name = "Align") protected String align; @XmlElement(name = "Pallet") protected String pallet; @XmlElement(name = "PackageNo") protected String packageNo; @XmlElement(name = "TrackLot") protected long trackLot; @XmlElement(name = "Series") protected long series; @XmlElement(name = "MesStockID") protected String mesStockID; @XmlElement(name = "Quantity", required = true) protected BigDecimal quantity; @XmlElement(name = "SapTrackLot") protected String sapTrackLot; @XmlElement(name = "Section") protected String section; @XmlElement(name = "DestSection") protected String destSection; @XmlElement(name = "SupplierCode") protected String supplierCode; @XmlElement(name = "SupplierTrackLot") protected String supplierTrackLot; @XmlElement(name = "StageID") protected String stageID; @XmlElement(name = "Remark") protected String remark; @XmlElement(name = "OrderCode") protected String orderCode; } src/main/java/org/jeecg/modules/wms/package-info.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,2 @@ @javax.xml.bind.annotation.XmlSchema(namespace = "http://tempuri.org/", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package org.jeecg.modules.wms; src/main/java/org/jeecg/modules/wms/request/ArrayOfWebServiceSendItem.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,71 @@ package org.jeecg.modules.wms.request; import org.jeecg.modules.wms.dto.WebServiceSendItem; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; import java.util.ArrayList; import java.util.List; /** * <p>ArrayOfWebServiceSendItem complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType name="ArrayOfWebServiceSendItem"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="WebServiceSendItem" type="{http://tempuri.org/}WebServiceSendItem" maxOccurs="unbounded" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "ArrayOfWebServiceSendItem", propOrder = { "webServiceSendItem" }) public class ArrayOfWebServiceSendItem { @XmlElement(name = "WebServiceSendItem", nillable = true) protected List<org.jeecg.modules.wms.dto.WebServiceSendItem> webServiceSendItem; /** * Gets the value of the webServiceSendItem property. * * <p> * This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the JAXB object. * This is why there is not a <CODE>set</CODE> method for the webServiceSendItem property. * * <p> * For example, to add a new item, do as follows: * <pre> * getWebServiceSendItem().add(newItem); * </pre> * * * <p> * Objects of the following type(s) are allowed in the list * {@link org.jeecg.modules.wms.dto.WebServiceSendItem } * * */ public List<WebServiceSendItem> getWebServiceSendItem() { if (webServiceSendItem == null) { webServiceSendItem = new ArrayList<>(); } return this.webServiceSendItem; } } src/main/java/org/jeecg/modules/wms/request/DeliOrderDelete.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,45 @@ package org.jeecg.modules.wms.request; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="sFactoryCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="sStockRecord" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "sFactoryCode", "sStockRecord" }) @XmlRootElement(name = "DeliOrderDelete") @Getter @Setter public class DeliOrderDelete { protected String sFactoryCode; protected String sStockRecord; } src/main/java/org/jeecg/modules/wms/request/HelloWorld.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,32 @@ package org.jeecg.modules.wms.request; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "") @XmlRootElement(name = "HelloWorld") public class HelloWorld { } src/main/java/org/jeecg/modules/wms/request/ReceiveMESScanItemList.java
@@ -1,19 +1,40 @@ package org.jeecg.modules.wms.request; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.*; import java.io.Serializable; import java.util.List; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="oMESScanItemList" type="{http://tempuri.org/}ArrayOfWebServiceSendItem" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "omesScanItemList" }) @XmlRootElement(name = "ReceiveMESScanItemList") @Getter @Setter @XmlRootElement(name = "ReceiveMESScanItemList") @XmlAccessorType(XmlAccessType.FIELD) public class ReceiveMESScanItemList implements Serializable { public class ReceiveMESScanItemList { @XmlElementWrapper(name = "ArrayOfWebServiceSendItem") @XmlElement(name = "WebServiceSendItem") private List<WebServiceSendItem> items; @XmlElement(name = "oMESScanItemList") protected ArrayOfWebServiceSendItem omesScanItemList; } src/main/java/org/jeecg/modules/wms/request/ReceiveReservation.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,42 @@ package org.jeecg.modules.wms.request; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; /** * <p>anonymous complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="oWebReservationOrder" type="{http://tempuri.org/}WebReservationOrder" minOccurs="0"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "oWebReservationOrder" }) @XmlRootElement(name = "ReceiveReservation") @Getter @Setter public class ReceiveReservation { protected WebReservationOrder oWebReservationOrder; } src/main/java/org/jeecg/modules/wms/request/WebReservationOrder.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,51 @@ package org.jeecg.modules.wms.request; import lombok.Getter; import lombok.Setter; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; import java.math.BigDecimal; /** * <p>WebReservationOrder complex typeç Java ç±»ã * * <p>以䏿¨¡å¼ç段æå®å å«å¨æ¤ç±»ä¸ç颿å 容ã * * <pre> * <complexType name="WebReservationOrder"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="FactoryCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="ReservationOrder" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> * <element name="Total" type="{http://www.w3.org/2001/XMLSchema}decimal"/> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "WebReservationOrder", propOrder = { "factoryCode", "reservationOrder", "total" }) @Getter @Setter public class WebReservationOrder { @XmlElement(name = "FactoryCode") protected String factoryCode; @XmlElement(name = "ReservationOrder") protected String reservationOrder; @XmlElement(name = "Total", required = true) protected BigDecimal total; } src/main/java/org/jeecg/modules/wms/service/WMSWebService.java
ÎļþÒÑɾ³ý src/main/java/org/jeecg/modules/wms/service/WebServiceSoap.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,63 @@ package org.jeecg.modules.wms.service; import org.jeecg.modules.wms.ObjectFactory; import org.jeecg.modules.wms.request.ArrayOfWebServiceSendItem; import org.jeecg.modules.wms.dto.WSResponse; import org.jeecg.modules.wms.request.WebReservationOrder; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.ws.RequestWrapper; import javax.xml.ws.ResponseWrapper; /** * This class was generated by Apache CXF 3.5.5 * 2025-08-15T16:30:13.468+08:00 * Generated source version: 3.5.5 * */ @WebService(targetNamespace = "http://tempuri.org/", name = "WebServiceSoap") @XmlSeeAlso({ObjectFactory.class}) public interface WebServiceSoap { @WebMethod(operationName = "ReceiveReservation", action = "http://tempuri.org/ReceiveReservation") @RequestWrapper(localName = "ReceiveReservation", targetNamespace = "http://tempuri.org/", className = "ReceiveReservation") @ResponseWrapper(localName = "ReceiveReservationResponse", targetNamespace = "http://tempuri.org/", className = "ReceiveReservationResponse") @WebResult(name = "ReceiveReservationResult", targetNamespace = "http://tempuri.org/") WSResponse receiveReservation( @WebParam(name = "oWebReservationOrder", targetNamespace = "http://tempuri.org/") WebReservationOrder oWebReservationOrder ); @WebMethod(operationName = "HelloWorld", action = "http://tempuri.org/HelloWorld") @RequestWrapper(localName = "HelloWorld", targetNamespace = "http://tempuri.org/", className = "HelloWorld") @ResponseWrapper(localName = "HelloWorldResponse", targetNamespace = "http://tempuri.org/", className = "HelloWorldResponse") @WebResult(name = "HelloWorldResult", targetNamespace = "http://tempuri.org/") String helloWorld(); @WebMethod(operationName = "ReceiveMESScanItemList", action = "http://tempuri.org/ReceiveMESScanItemList") @RequestWrapper(localName = "ReceiveMESScanItemList", targetNamespace = "http://tempuri.org/", className = "ReceiveMESScanItemList") @ResponseWrapper(localName = "ReceiveMESScanItemListResponse", targetNamespace = "http://tempuri.org/", className = "ReceiveMESScanItemListResponse") @WebResult(name = "ReceiveMESScanItemListResult", targetNamespace = "http://tempuri.org/") WSResponse receiveMESScanItemList( @WebParam(name = "oMESScanItemList", targetNamespace = "http://tempuri.org/") ArrayOfWebServiceSendItem oMESScanItemList ); @WebMethod(operationName = "DeliOrderDelete", action = "http://tempuri.org/DeliOrderDelete") @RequestWrapper(localName = "DeliOrderDelete", targetNamespace = "http://tempuri.org/", className = "DeliOrderDelete") @ResponseWrapper(localName = "DeliOrderDeleteResponse", targetNamespace = "http://tempuri.org/", className = "DeliOrderDeleteResponse") @WebResult(name = "DeliOrderDeleteResult", targetNamespace = "http://tempuri.org/") WSResponse deliOrderDelete( @WebParam(name = "sFactoryCode", targetNamespace = "http://tempuri.org/") String sFactoryCode, @WebParam(name = "sStockRecord", targetNamespace = "http://tempuri.org/") String sStockRecord ); } src/main/resources/wsdl/WebService.asmx.wsdl
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,227 @@ <?xml version="1.0" encoding="utf-8"?> <wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://tempuri.org/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> <wsdl:types> <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/"> <s:element name="ReceiveMESScanItemList"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="oMESScanItemList" type="tns:ArrayOfWebServiceSendItem" /> </s:sequence> </s:complexType> </s:element> <s:complexType name="ArrayOfWebServiceSendItem"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="WebServiceSendItem" nillable="true" type="tns:WebServiceSendItem" /> </s:sequence> </s:complexType> <s:complexType name="WebServiceSendItem"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="FactoryCode" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="SkuCode" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Align" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Pallet" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="PackageNo" type="s:string" /> <s:element minOccurs="1" maxOccurs="1" name="TrackLot" type="s:long" /> <s:element minOccurs="1" maxOccurs="1" name="Series" type="s:long" /> <s:element minOccurs="0" maxOccurs="1" name="MesStockID" type="s:string" /> <s:element minOccurs="1" maxOccurs="1" name="Quantity" type="s:decimal" /> <s:element minOccurs="0" maxOccurs="1" name="SapTrackLot" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Section" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="DestSection" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="SupplierCode" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="SupplierTrackLot" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="StageID" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Remark" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="OrderCode" type="s:string" /> </s:sequence> </s:complexType> <s:element name="ReceiveMESScanItemListResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="ReceiveMESScanItemListResult" type="tns:WSResponse" /> </s:sequence> </s:complexType> </s:element> <s:complexType name="WSResponse"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="ErrorCode" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="ErrorDesc" type="s:string" /> </s:sequence> </s:complexType> <s:element name="DeliOrderDelete"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="sFactoryCode" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="sStockRecord" type="s:string" /> </s:sequence> </s:complexType> </s:element> <s:element name="DeliOrderDeleteResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="DeliOrderDeleteResult" type="tns:WSResponse" /> </s:sequence> </s:complexType> </s:element> <s:element name="ReceiveReservation"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="oWebReservationOrder" type="tns:WebReservationOrder" /> </s:sequence> </s:complexType> </s:element> <s:complexType name="WebReservationOrder"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="FactoryCode" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="ReservationOrder" type="s:string" /> <s:element minOccurs="1" maxOccurs="1" name="Total" type="s:decimal" /> </s:sequence> </s:complexType> <s:element name="ReceiveReservationResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="ReceiveReservationResult" type="tns:WSResponse" /> </s:sequence> </s:complexType> </s:element> <s:element name="HelloWorld"> <s:complexType /> </s:element> <s:element name="HelloWorldResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="HelloWorldResult" type="s:string" /> </s:sequence> </s:complexType> </s:element> </s:schema> </wsdl:types> <wsdl:message name="ReceiveMESScanItemListSoapIn"> <wsdl:part name="parameters" element="tns:ReceiveMESScanItemList" /> </wsdl:message> <wsdl:message name="ReceiveMESScanItemListSoapOut"> <wsdl:part name="parameters" element="tns:ReceiveMESScanItemListResponse" /> </wsdl:message> <wsdl:message name="DeliOrderDeleteSoapIn"> <wsdl:part name="parameters" element="tns:DeliOrderDelete" /> </wsdl:message> <wsdl:message name="DeliOrderDeleteSoapOut"> <wsdl:part name="parameters" element="tns:DeliOrderDeleteResponse" /> </wsdl:message> <wsdl:message name="ReceiveReservationSoapIn"> <wsdl:part name="parameters" element="tns:ReceiveReservation" /> </wsdl:message> <wsdl:message name="ReceiveReservationSoapOut"> <wsdl:part name="parameters" element="tns:ReceiveReservationResponse" /> </wsdl:message> <wsdl:message name="HelloWorldSoapIn"> <wsdl:part name="parameters" element="tns:HelloWorld" /> </wsdl:message> <wsdl:message name="HelloWorldSoapOut"> <wsdl:part name="parameters" element="tns:HelloWorldResponse" /> </wsdl:message> <wsdl:portType name="WebServiceSoap"> <wsdl:operation name="ReceiveMESScanItemList"> <wsdl:input message="tns:ReceiveMESScanItemListSoapIn" /> <wsdl:output message="tns:ReceiveMESScanItemListSoapOut" /> </wsdl:operation> <wsdl:operation name="DeliOrderDelete"> <wsdl:input message="tns:DeliOrderDeleteSoapIn" /> <wsdl:output message="tns:DeliOrderDeleteSoapOut" /> </wsdl:operation> <wsdl:operation name="ReceiveReservation"> <wsdl:input message="tns:ReceiveReservationSoapIn" /> <wsdl:output message="tns:ReceiveReservationSoapOut" /> </wsdl:operation> <wsdl:operation name="HelloWorld"> <wsdl:input message="tns:HelloWorldSoapIn" /> <wsdl:output message="tns:HelloWorldSoapOut" /> </wsdl:operation> </wsdl:portType> <wsdl:binding name="WebServiceSoap" type="tns:WebServiceSoap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operation name="ReceiveMESScanItemList"> <soap:operation soapAction="http://tempuri.org/ReceiveMESScanItemList" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="DeliOrderDelete"> <soap:operation soapAction="http://tempuri.org/DeliOrderDelete" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="ReceiveReservation"> <soap:operation soapAction="http://tempuri.org/ReceiveReservation" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="HelloWorld"> <soap:operation soapAction="http://tempuri.org/HelloWorld" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:binding name="WebServiceSoap12" type="tns:WebServiceSoap"> <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operation name="ReceiveMESScanItemList"> <soap12:operation soapAction="http://tempuri.org/ReceiveMESScanItemList" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="DeliOrderDelete"> <soap12:operation soapAction="http://tempuri.org/DeliOrderDelete" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="ReceiveReservation"> <soap12:operation soapAction="http://tempuri.org/ReceiveReservation" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operation name="HelloWorld"> <soap12:operation soapAction="http://tempuri.org/HelloWorld" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="WebService"> <wsdl:port name="WebServiceSoap" binding="tns:WebServiceSoap"> <soap:address location="http://10.101.0.182:8002/MesWebService/WebService.asmx" /> </wsdl:port> <wsdl:port name="WebServiceSoap12" binding="tns:WebServiceSoap12"> <soap12:address location="http://10.101.0.182:8002/MesWebService/WebService.asmx" /> </wsdl:port> </wsdl:service> </wsdl:definitions>