728x90

해당 에러로그

Fatal Exception: java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(2131296938, class android.widget.ListView) with Adapter (~)

 

 

Fatal Exception: java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. Make sure your adapter calls notifyDataSetChanged() when its content changes. [in ListView(2131296938, class android.widget.ListView) with Adapter()
       at android.widget.ListView.layoutChildren(ListView.java:1715)
       at android.widget.AbsListView.onTouchUp(AbsListView.java:4129)
       at android.widget.HwAbsListView.onTouchUp(HwAbsListView.java:535)
       at android.widget.AbsListView.onTouchEvent(AbsListView.java:3909)
       at android.view.View.dispatchTouchEvent(View.java:11788)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2968)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2647)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2974)
       at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2661)
       at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:549)
       at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1953)
       at android.app.Activity.dispatchTouchEvent(Activity.java:3559)
       at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:502)
       at android.view.View.dispatchPointerEvent(View.java:12027)
       at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5278)
       at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5067)
       at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4581)
       at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4634)
       at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4600)
       at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4727)
       at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4608)
       at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4784)
       at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4581)
       at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4634)
       at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4600)
       at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4608)
       at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4581)
       at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7169)
       at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7143)
       at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7104)
       at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7325)
       at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:192)
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:379)
       at android.os.Looper.loop(Looper.java:144)
       at android.app.ActivityThread.main(ActivityThread.java:7529)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)

 

 

상황원인: 디바이스 성능이 낮은 경우에 잘 발생하는 에러로, adapter의 콘텐츠를 UI 쓰레드로 처리해야하는데, 백그라운드에서 하려고 했기 때문에 발생하는 에러. 디바이스 성능이 좋으면 잘 나타나지 않는다고 함. (케바케인 것)

해결방법 : UI 쓰레드로 처리하도록 코드를 수정하면 되는데, 로그를 찍는 포인트가 어정쩡한지 대체 어느 부분인가...

 

 


Reference

https://devuryu.tistory.com/132

https://tigerwoods.tistory.com/26

 

 

 

 

 

 

728x90
728x90

 

Several ports (8005, 8009) required by (서버명) are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you will need to stop the other process or change the port number(s). 

=> was 재시작을 위한 포트가 이미 사용중인 경우이다. 포트를 사용하고 있는 pid를 확인하여 강제 종료해야한다.

 

 

//포트 사용중인 서비스 확인

netstat -a -n -o -p tcp  


//해당 pid 서비스종료

taskkill /f /pid 4444

 

 

Reference

 

http://myblog.opendocs.co.kr/archives/1702

 

 

 

728x90
728x90

에러 : java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for​ ~

 

[에러가 발생할수 있는 상황]

 

1. mapper id가 다를경우

   - mapper파일(MyBatis의 쿼리문을 등록한 XML파일)에 <select id=''.. 에 id와 

     mapper파일에 직접 접근하는 java파일(DAO나 service)에 적어놓은 id값이 다른 경우 

2. Parameter와 bean의 필드명이 틀린 경우

3. mapper파일(MyBatis의 쿼리문을 등록한 XML파일) 정의된 네임스페이스(namespace)와 

   mapper파일에 직접 접근하는 java파일(DAO나 service)에서 호출하는 네임스페이스(namespace)가 다를 경우

4. MyBatis config파일에 mapper가 정의가 되어 있지 않거나 Spelling이 틀린 경우

5. mapper에 정의된 namespace 명칭이 같은 Application 내에 중복 될 경우

 

[출처] [에러] 마이바티스 에러 Mapped Statements collection does not contain value for​ ~|작성자 자바킹

 

728x90
728x90

기존 프로젝트를 바탕으로 토이프로젝트를 마구잡이로 만들다가 발견한 에러

 

log4j:ERROR setFile(null,true) call failed.

 

원인: 프로젝트의 소스 폴더에 log4j.properties 파일을 추가 안해서 생긴 에러

해결방법은 역시나, log4j.properties를 추가하면 되는데, 이번건은 추가해서 해결했으나,

경우에 따라서는 추가해도 안된다는 경우가 있나보다.

 

예:

https://codeday.me/ko/qa/20190324/146081.html

 

 

 

728x90

+ Recent posts