fix : again appoint MediaType for request post (#770)

pull/779/head
pizihao 3 years ago
parent b82c995c2d
commit 5a54379eab

@ -21,6 +21,7 @@ import cn.hippo4j.common.constant.ConfigModifyTypeConstants;
import cn.hippo4j.common.toolkit.BeanUtil; import cn.hippo4j.common.toolkit.BeanUtil;
import cn.hippo4j.common.toolkit.JSONUtil; import cn.hippo4j.common.toolkit.JSONUtil;
import cn.hippo4j.common.toolkit.UserContext; import cn.hippo4j.common.toolkit.UserContext;
import cn.hippo4j.common.toolkit.StringUtil;
import cn.hippo4j.common.web.base.Result; import cn.hippo4j.common.web.base.Result;
import cn.hippo4j.common.web.base.Results; import cn.hippo4j.common.web.base.Results;
import cn.hippo4j.config.model.biz.adapter.ThreadPoolAdapterReqDTO; import cn.hippo4j.config.model.biz.adapter.ThreadPoolAdapterReqDTO;
@ -29,6 +30,9 @@ import cn.hippo4j.config.model.biz.threadpool.ConfigModifySaveReqDTO;
import cn.hippo4j.config.service.ThreadPoolAdapterService; import cn.hippo4j.config.service.ThreadPoolAdapterService;
import cn.hippo4j.config.verify.ConfigModificationVerifyServiceChoose; import cn.hippo4j.config.verify.ConfigModificationVerifyServiceChoose;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@ -51,8 +55,6 @@ public class ThreadPoolAdapterController {
private final ConfigModificationVerifyServiceChoose configModificationVerifyServiceChoose; private final ConfigModificationVerifyServiceChoose configModificationVerifyServiceChoose;
private final RestTemplate restTemplate = new RestTemplate();
@GetMapping(REGISTER_ADAPTER_BASE_PATH + "/query") @GetMapping(REGISTER_ADAPTER_BASE_PATH + "/query")
public Result<List<ThreadPoolAdapterRespDTO>> queryAdapterThreadPool(ThreadPoolAdapterReqDTO requestParameter) { public Result<List<ThreadPoolAdapterRespDTO>> queryAdapterThreadPool(ThreadPoolAdapterReqDTO requestParameter) {
List<ThreadPoolAdapterRespDTO> result = threadPoolAdapterService.query(requestParameter); List<ThreadPoolAdapterRespDTO> result = threadPoolAdapterService.query(requestParameter);
@ -69,12 +71,13 @@ public class ThreadPoolAdapterController {
public Result<Void> updateAdapterThreadPool(@RequestBody ThreadPoolAdapterReqDTO requestParameter) { public Result<Void> updateAdapterThreadPool(@RequestBody ThreadPoolAdapterReqDTO requestParameter) {
if (UserContext.getUserRole().equals("ROLE_ADMIN")) { if (UserContext.getUserRole().equals("ROLE_ADMIN")) {
for (String each : requestParameter.getClientAddressList()) { for (String each : requestParameter.getClientAddressList()) {
String urlString = new StringBuilder() String urlString = StringUtil.newBuilder("http://", each, "/adapter/thread-pool/update");
.append("http://") RestTemplate restTemplate = new RestTemplate();
.append(each) // again appoint MediaType
.append("/adapter/thread-pool/update") HttpHeaders requestHeaders = new HttpHeaders();
.toString(); requestHeaders.setContentType(MediaType.APPLICATION_JSON);
restTemplate.postForObject(urlString, JSONUtil.toJSONString(requestParameter), Object.class); HttpEntity<String> requestEntity = new HttpEntity<>(JSONUtil.toJSONString(requestParameter), requestHeaders);
restTemplate.postForObject(urlString, requestEntity, Object.class);
} }
} else { } else {
ConfigModifySaveReqDTO modifySaveReqDTO = BeanUtil.convert(requestParameter, ConfigModifySaveReqDTO.class); ConfigModifySaveReqDTO modifySaveReqDTO = BeanUtil.convert(requestParameter, ConfigModifySaveReqDTO.class);

@ -36,6 +36,9 @@ import cn.hippo4j.discovery.core.BaseInstanceRegistry;
import cn.hippo4j.discovery.core.Lease; import cn.hippo4j.discovery.core.Lease;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
@ -62,8 +65,6 @@ public class ThreadPoolController {
private final ConfigModificationVerifyServiceChoose configModificationVerifyServiceChoose; private final ConfigModificationVerifyServiceChoose configModificationVerifyServiceChoose;
private final RestTemplate restTemplate = new RestTemplate();
@PostMapping("/query/page") @PostMapping("/query/page")
public Result<IPage<ThreadPoolRespDTO>> queryNameSpacePage(@RequestBody ThreadPoolQueryReqDTO reqDTO) { public Result<IPage<ThreadPoolRespDTO>> queryNameSpacePage(@RequestBody ThreadPoolQueryReqDTO reqDTO) {
return Results.success(threadPoolService.queryThreadPoolPage(reqDTO)); return Results.success(threadPoolService.queryThreadPoolPage(reqDTO));
@ -109,12 +110,8 @@ public class ThreadPoolController {
@GetMapping("/run/state/{tpId}") @GetMapping("/run/state/{tpId}")
public Result runState(@PathVariable("tpId") String tpId, public Result runState(@PathVariable("tpId") String tpId,
@RequestParam(value = "clientAddress") String clientAddress) { @RequestParam(value = "clientAddress") String clientAddress) {
String urlString = new StringBuilder() String urlString = StringUtil.newBuilder("http://", clientAddress, "/run/state/", tpId);
.append("http://") RestTemplate restTemplate = new RestTemplate();
.append(clientAddress)
.append("/run/state/")
.append(tpId)
.toString();
String data = restTemplate.getForObject(urlString, String.class, new HashMap<>()); String data = restTemplate.getForObject(urlString, String.class, new HashMap<>());
Result result = JSONUtil.parseObject(data, Result.class); Result result = JSONUtil.parseObject(data, Result.class);
return result; return result;
@ -123,12 +120,8 @@ public class ThreadPoolController {
@GetMapping("/run/thread/state/{tpId}") @GetMapping("/run/thread/state/{tpId}")
public Result runThreadState(@PathVariable("tpId") String tpId, public Result runThreadState(@PathVariable("tpId") String tpId,
@RequestParam(value = "clientAddress") String clientAddress) { @RequestParam(value = "clientAddress") String clientAddress) {
String urlString = new StringBuilder() String urlString = StringUtil.newBuilder("http://", clientAddress, "/run/thread/state/", tpId);
.append("http://") RestTemplate restTemplate = new RestTemplate();
.append(clientAddress)
.append("/run/thread/state/")
.append(tpId)
.toString();
String data = restTemplate.getForObject(urlString, String.class, new HashMap<>()); String data = restTemplate.getForObject(urlString, String.class, new HashMap<>());
Result result = JSONUtil.parseObject(data, Result.class); Result result = JSONUtil.parseObject(data, Result.class);
return result; return result;
@ -166,11 +159,8 @@ public class ThreadPoolController {
@GetMapping("/web/base/info") @GetMapping("/web/base/info")
public Result getPoolBaseState(@RequestParam(value = "clientAddress") String clientAddress) { public Result getPoolBaseState(@RequestParam(value = "clientAddress") String clientAddress) {
String urlString = new StringBuilder() String urlString = StringUtil.newBuilder("http://", clientAddress, "/web/base/info");
.append("http://") RestTemplate restTemplate = new RestTemplate();
.append(clientAddress)
.append("/web/base/info")
.toString();
String data = restTemplate.getForObject(urlString, String.class, new HashMap<>()); String data = restTemplate.getForObject(urlString, String.class, new HashMap<>());
Result result = JSONUtil.parseObject(data, Result.class); Result result = JSONUtil.parseObject(data, Result.class);
return result; return result;
@ -178,11 +168,8 @@ public class ThreadPoolController {
@GetMapping("/web/run/state") @GetMapping("/web/run/state")
public Result getPoolRunState(@RequestParam(value = "clientAddress") String clientAddress) { public Result getPoolRunState(@RequestParam(value = "clientAddress") String clientAddress) {
String urlString = new StringBuilder() String urlString = StringUtil.newBuilder("http://", clientAddress, "/web/run/state");
.append("http://") RestTemplate restTemplate = new RestTemplate();
.append(clientAddress)
.append("/web/run/state")
.toString();
String data = restTemplate.getForObject(urlString, String.class, new HashMap<>()); String data = restTemplate.getForObject(urlString, String.class, new HashMap<>());
Result result = JSONUtil.parseObject(data, Result.class); Result result = JSONUtil.parseObject(data, Result.class);
return result; return result;
@ -192,12 +179,13 @@ public class ThreadPoolController {
public Result<Void> updateWebThreadPool(@RequestBody WebThreadPoolReqDTO requestParam) { public Result<Void> updateWebThreadPool(@RequestBody WebThreadPoolReqDTO requestParam) {
if (UserContext.getUserRole().equals("ROLE_ADMIN")) { if (UserContext.getUserRole().equals("ROLE_ADMIN")) {
for (String each : requestParam.getClientAddressList()) { for (String each : requestParam.getClientAddressList()) {
String urlString = new StringBuilder() String urlString = StringUtil.newBuilder("http://", each, "/web/update/pool");
.append("http://") RestTemplate restTemplate = new RestTemplate();
.append(each) // again appoint MediaType
.append("/web/update/pool") HttpHeaders requestHeaders = new HttpHeaders();
.toString(); requestHeaders.setContentType(MediaType.APPLICATION_JSON);
restTemplate.postForObject(urlString, JSONUtil.toJSONString(requestParam), Object.class); HttpEntity<String> requestEntity = new HttpEntity<>(JSONUtil.toJSONString(requestParam), requestHeaders);
restTemplate.postForObject(urlString, requestEntity, Object.class);
} }
} else { } else {
ConfigModifySaveReqDTO modifySaveReqDTO = BeanUtil.convert(requestParam, ConfigModifySaveReqDTO.class); ConfigModifySaveReqDTO modifySaveReqDTO = BeanUtil.convert(requestParam, ConfigModifySaveReqDTO.class);
@ -238,5 +226,4 @@ public class ThreadPoolController {
}); });
return Results.success(returnThreadPool); return Results.success(returnThreadPool);
} }
} }

Loading…
Cancel
Save