jdom의 xPath 기능을 활용하여 xml 전문 내에서 특정 항목의 값을 추출하려 하였으나 더 이상 로그가 표출되지 않고 진행이 되지 않고 멈추는 증상이 발생하였다. 사용하고 있는 xPath 관련 코드는 아래와 같다. Document documentDataselectElement = (Element)XPath.selectSingleNode(documentData,pm_sPath); XPath class 정의를 보기 위해 declaration open을 해보았을 때 jdom.jar 내에 있다고 확인되었고 해당 메소드를 사용하는 소스상에도import org.jdom.xpath.XPath; import 정보를 확인할 수 있었음.jdom.jar에서 해당 메서드를 호출하는 소스를 디컴파일 해보았음. XPath...
서로 다른 시스템 간 byte 데이터를 송수신하는 기능을 개발 조건 1.byte 데이터를 String형으로 송수신 2.시스템간 인스턴스 문자 인코딩(UTF-8, EUC-KR 등)이 다름바이트 데이터 추출하기 System.out.println("===현재 프로젝트 문자 인코딩 UTF-8==="); System.out.println("===byte 데이터 문자 인코딩 확인==="); String testStr = "테스트"; byte[] euckrByte = testStr.getBytes("EUC-KR"); byte[] utf8Byte = testStr.getBytes("UTF-8"); String euckrStrToUtf8 = new String(euckrByte,"UTF..
오라클 시퀀스를 사용한 기능을 추가하던 중 시퀀스가 증가하지 않는 현상이 발생하였음. 간략한 작업 내용은 특정 시퀀스를 조회하여 보관하고 다시 동일한 시퀀스를 조회하여 함께 사용하는 작업이었음. 첫 번째 시퀀스 조회 시 증가된 번호를 가져왔으나 두 번째 시퀀스 조회 시 첫 번째에 조회된 번호가 그대로 들어있었음. 첫번째 시퀀스 조회 결과 : 1 두번째 시퀀스 조회 결과 : 1 해당 기능과 관련된 일부 소스는 아래와 같음. MyBatis 영역 SELECT SEQ.NEXTVAL FROM DUAL Repository 영역 TestDAO interface 작성 생략 @Repository public class TestDAOImpl implements TestDAO{ @Override public int getT..
발단상황java를 사용하고 데이터베이스에서 조회된 데이터 목록을 JSON 형태로 응답을 해주는 방법 중 하나로는 ObjectMapper Class ( import com.fasterxml.jackson.databind.ObjectMapper; )가 있다. ObjectMapper Class 내에 여러 메소드 중 하나인 writeValueAsString 메소드는 java의 Object를 직렬화 과정을 통하여 json 형태의 String 형으로 변환해 주는 역할을 한다. 이러한 기능을 이용하여 기능을 개발을 진행하던 중 원하는 결과를 반환하지 않는 경우가 발생하였다. 데이터베이스에서 데이터 목록을 조회하여 ObjectMapper의 writeValueAsString 메소드를 이용하여 값을 반환하는 기능을 개발하..
발단 java 환경에서 작업을 진행하던 중 아래와 같은 오류 로그 발생 로컬 작업환경에서는 정상적으로 테스트되었으나 서버상에서 테스트 시 발생 Java security providerexception could not derive key java rsa decryption is failed 해당 에러가 발생하는 부분에서 사용하고 있는 메소드 확인 시 아래와 같음 import org.bouncycastle.util.encoders.Base64 잘 알려진 JCE(Java Cryptography Extension) 라이브러리 보안 공급자 중 하나인 "bouncycastleprovider"를 호출하다 발생하는 것으로 확인. 원인파악 bouncycastleprovider 사용시 기본 설정하는 부분에 대하여 로컬과..
발단 사용자 사용 이력을 분석 중 일부 데이터에 특정 값이 누락되어 저장되는 현상을 확인하였음. 해당 이력이 저장되는 로직을 분석한 결과 A 메소드를 진행 시 객체에 저장된 값을 세션에 저장하여 B화면으로 이동 후 화면내 작업 완료 시 B 메소드로 가지고 가서 이력을 남기는 로직으로 확인하였음. public String A(HttpServletRequest request){ TestVo testVo = new TestVo(); testVo.setOne("1"); testVo.setTwo("2"); testVo.setThree("3"); HttpSession session = request.getSession(); session.setAttribute("TestSession", vo); //현시점 Test..
Optional이란 java 8버전 이후 부터 java.util 패키지 내 Optional이라는 class를 제공한다. 용도는 java 비지니스 로직을 구현하며 많이 발생하는 NPE(NullPointException)을 방지하기 위함이다. Optional 사용 시 발생하는 문제점 Optional get 종류에 따른 결과확인을 위한 소스코드 public static void main(String[] args) { System.out.println("case1 - Optional.get() 수행"); Optional case1 = Optional.of("case1 data"); System.out.println("case1 " + case1.get()); System.out.println("=========..
vscode 환경에서 JAVA, SpringBoot, Gradle의 개발환경에서 최초 작업하였던 PC가 아닌 다른 PC에서 소스를 내려받은 후 작업을 진행하기 위해 프로젝트 실행을 하던 중 아래와 같은 오류메시지가 발생하였다. PS 프로젝트경로위치> .\gradlew.bat bootrun Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details > Configure project : zone: null > Task :compileJava FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for t..
- Total
- Today
- Yesterday
- Oracle
- Windows
- jaxen
- spring
- Linux
- JPA
- 날짜
- web
- SpringBoot
- 이벤트발생
- Git
- SQL
- TLS
- Eclipse
- vscode
- html
- jQuery
- parse
- IMAGE
- 컨테이너
- React
- JSON
- mybatis
- SSL
- WAS
- gradle
- Java
- btye
- docker
- 깨짐
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |