cantos song created CXF-9132:
--------------------------------

             Summary: HttpClientHTTPConduit RefCount  Multiple release
                 Key: CXF-9132
                 URL: https://issues.apache.org/jira/browse/CXF-9132
             Project: CXF
          Issue Type: Bug
          Components: Transports
    Affects Versions: 4.1.1, 4.0.7, 4.0.6, 4.0.5, 4.1.0, 4.1.2, 4.0.8
         Environment: JDK 21
CXF 4.0.5/4.0.6/4.0.7/4.1.0/4.1.1
            Reporter: cantos song
         Attachments: TestCxf.java

[https://github.com/apache/cxf/pull/1777/files]



When I used version 4.0.4 without any issues, all subsequent versions had 
problems.

If the address is modified, it will be released multiple times.

[!https://private-user-images.githubusercontent.com/15994261/438528865-8f282ba8-c4de-4451-b2ca-a8f76c79b643.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDU5MDUwODcsIm5iZiI6MTc0NTkwNDc4NywicGF0aCI6Ii8xNTk5NDI2MS80Mzg1Mjg4NjUtOGYyODJiYTgtYzRkZS00NDUxLWIyY2EtYThmNzZjNzliNjQzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA0MjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNDI5VDA1MzMwN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRiZTNlMzY5NjU5ZmU3M2U5OGZmMWViNDIzNTg1N2VmYWUwYTM5MzMwNDM0MDEwMjEzNGVlZDA3ZWI2OWYzMjMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.of98VPy7r6f4fZ7Ki3ePQokPK5XtB3LHGmGRVLXrlOw!|https://private-user-images.githubusercontent.com/15994261/438528865-8f282ba8-c4de-4451-b2ca-a8f76c79b643.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDU5MDUwODcsIm5iZiI6MTc0NTkwNDc4NywicGF0aCI6Ii8xNTk5NDI2MS80Mzg1Mjg4NjUtOGYyODJiYTgtYzRkZS00NDUxLWIyY2EtYThmNzZjNzliNjQzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA0MjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNDI5VDA1MzMwN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRiZTNlMzY5NjU5ZmU3M2U5OGZmMWViNDIzNTg1N2VmYWUwYTM5MzMwNDM0MDEwMjEzNGVlZDA3ZWI2OWYzMjMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.of98VPy7r6f4fZ7Ki3ePQokPK5XtB3LHGmGRVLXrlOw]

[!https://private-user-images.githubusercontent.com/15994261/438528287-eb11518a-b8de-4d8b-a492-e18f091e42d2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDU5MDUwODcsIm5iZiI6MTc0NTkwNDc4NywicGF0aCI6Ii8xNTk5NDI2MS80Mzg1MjgyODctZWIxMTUxOGEtYjhkZS00ZDhiLWE0OTItZTE4ZjA5MWU0MmQyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA0MjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNDI5VDA1MzMwN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJkNmM0MDA0YWE2N2ZlYWJjMWMyMDcwN2QxMWNiOWM2MGY5OGY3YzFmNjUyMWI5YWIzOWRkOWY2ZGJiODI1NDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.JZxzLZ_9RViaD8-nG538Qcc4JL3Er-oyUkyy8WF2P-I!|https://private-user-images.githubusercontent.com/15994261/438528287-eb11518a-b8de-4d8b-a492-e18f091e42d2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NDU5MDUwODcsIm5iZiI6MTc0NTkwNDc4NywicGF0aCI6Ii8xNTk5NDI2MS80Mzg1MjgyODctZWIxMTUxOGEtYjhkZS00ZDhiLWE0OTItZTE4ZjA5MWU0MmQyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA0MjklMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNDI5VDA1MzMwN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJkNmM0MDA0YWE2N2ZlYWJjMWMyMDcwN2QxMWNiOWM2MGY5OGY3YzFmNjUyMWI5YWIzOWRkOWY2ZGJiODI1NDgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.JZxzLZ_9RViaD8-nG538Qcc4JL3Er-oyUkyy8WF2P-I]

 

import jakarta.jws.WebMethod;
import jakarta.jws.WebParam;
import jakarta.jws.WebResult;
import org.apache.commons.lang3.RandomUtils;
import org.apache.cxf.binding.soap.SoapMessage;
import org.apache.cxf.interceptor.Fault;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.cxf.phase.AbstractPhaseInterceptor;
import org.apache.cxf.phase.Phase;

import java.util.ArrayList;
import java.util.List;

public class TestCxf {

public static void main(String[] args) throws InterruptedException {
HTNGOutboundWebService byAddress = getByAddress();
int i = 0;
while (i <= 300) {
Thread.ofVirtual().start(new Runnable() {
@Override
public void run() {
try {
byAddress.ratePlanSubmitRequest("");
} catch (Exception e) {
if (!e.getCause().toString().contains("HTTP response")) {
e.printStackTrace();
}
}
}
} );
i++;
}
Thread.sleep(100000);
}

public static class HTNGHeaderOutInterceptor1 extends 
AbstractPhaseInterceptor<SoapMessage> {
static List<String> address = new ArrayList();

public HTNGHeaderOutInterceptor1() {
super(Phase.PREPARE_SEND);
address.add("https://www.baidu.com";);
address.add("https://www.tencent.com";);
}

@Override
public void handleMessage(SoapMessage message) throws Fault {
int i1 = RandomUtils.secure().randomInt(0, 2);
message.put(org.apache.cxf.message.Message.ENDPOINT_ADDRESS, address.get(i1));
}
}

public static HTNGOutboundWebService getByAddress() {
JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new JaxWsProxyFactoryBean();
jaxWsProxyFactoryBean.setServiceClass(HTNGOutboundWebService.class);
jaxWsProxyFactoryBean.getOutInterceptors().add(new HTNGHeaderOutInterceptor1());

HTNGOutboundWebService soap = (HTNGOutboundWebService) 
jaxWsProxyFactoryBean.create();
return soap;
}

public interface HTNGOutboundWebService {
@WebMethod(operationName = "RatePlan_SubmitRequest", action = 
"http://htng.org/PWSWG/2010/12/RatePlan_SubmitRequest";)
@WebResult(name = "OTA_HotelRatePlanNotifRS", targetNamespace = 
"http://www.opentravel.org/OTA/2003/05";, partName = "OTA_HotelRatePlanNotifRS")
public void ratePlanSubmitRequest(
@WebParam(partName = "OTA_HotelRatePlanNotifRQ", name = 
"OTA_HotelRatePlanNotifRQ", targetNamespace = 
"http://www.opentravel.org/OTA/2003/05";)
String aa
);
}

}
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to