반응형

JPAExpression.select를 이용해서 발생했던 문제.
-> JPAQueryFactory(entityManager)로 이용했더니 됨.

구글링 내용
출처: https://velog.io/@sigint_107/GraphQL-QueryDsl-null-Fetching-Error
GraphQL디버거에서 나온 에러내용
"Exception while fetching data (/comparePartsCond) : null",
IntelliJ console에서 나오는 에러내용
UnsupportedOperationException: null
원인은 queryDsl쿼리를 JPAexpression객체로 불러서 나오는 에러였다. 
원래대로라면 JPAQueryFactory가 QueryDsl쿼리를 부르는 맞는 객체이다.

반응형
LIST
반응형

 

- ReloadConfig

@Component

public class ReloadConfig {

  private ReloadingFileBasedConfigurationBuilder<PropertiesConfiguration> builder;

 

  @Value("${spring.profiles.active}")

  private String active;

 

  @PostConstruct

  void init() {

    builder = new ReloadingFileBasedConfigurationBuilder<>(PropertiesConfiguration.class)

                    .configure(new Parameters().fileBased().setFile(new File("./properties-" + active + ".properties")));

    PeriodicReloadingTrigger periodicReloadingTrigger = new PeriodicReloadingTrigger(

      builder.getReloadingController(), null, 50, TimeUnit.SECONDS

    );

    periodicReloadingTrigger.start();

  }

 

  public Configuration getConfig() {

    try {

 

    } catch(ConfigurationException e) {

      e.printStackTrace();

    }

    return null;

  }

}

 

- properties-local.properties

mail.receivers:aaa@aaa.com,bbb@bbb.com,ccc@ccc.com

 

- 사용

@Autowired

private ReloadConfig reloadConfig;

 

public void sendEmail() {

  String[] mailReceivers = reloadConfig.getConfig().getString("mail.receivers").split(",");

}

 


"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
반응형
LIST
반응형

 

Thymeleaf Layout Dialect 사용하지 않고 left 메뉴를 분리처리

 

thymeleaf-layout-dialect 를 만든 이유가 분명 있지만... 사용할 수 없는 환경에서 th:block을 이용하여 아래와 같이 처리

 

디렉토리 구조

 

 

-- resouces

  -- static

    -- css

      style.css

  -- templates

    main.html

    head.html

    left.html

 

 

- main.html

<html>

  <th:block th:include="head"></th:block>

  <body>

    <th:block th:include="left"></th:block>

    Main화면~~~

  <body>

</html>

 

- head.html

<head>

  <title>Title</title>

  <link ref="stylesheet" th:href="@{/css/style.css}">

</head>

 

- left.html

<div>

  <ul>

    <li>메뉴1</li>

    <li>메뉴2</li>

  </ul>

</div>

 

 




"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

반응형
LIST
반응형

* a href 다이나믹 경로 설정

- 데이터

{"menu": {

  "name":"한식"

  , "code":"KR"

  }

}

- 코드

  <a th:text="${menu.name}" th:href="@{/menu/} + ${menu.code}"></a>

    또는

  <a th:text="${menu.name}" th:href="@{/menu/{code}(code=${menu.code})}"></a>

 

>> '/menu/kr' 로 이동

 

 

* a href Get 파라미터 설정

- 데이터

{"menu": {

  "name":"한식"

  , "code":"KR"

  }

}

- 코드

  <a th:text="${menu.name}" th:href="@{/menu(code=${menu.code})}"></a>

>> '/menu?code=kr' 로 이동

 

 

* a href onclick 사용

- 데이터

{"menu": {

  "name":"한식"

  , "code":"KR"

  }

}

- 스크립트

<script>

  function goMenu(url) {

    document.location.href=url;

  }

</script>

- 코드

  <a th:text="${menu.name}" href="javascript:void(0)" th:onclick="'goMenu(\'' + @{/menu(code=${menu.code})} + '\')'"></a>

>> '/menu?code=kr' 로 이동

 




"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

반응형
LIST

+ Recent posts