'분류 전체보기'에 해당되는 글 223건

  1. 2011.09.27 jQuery ajax 로 로딩되는 페이지에 있는 자바스크립트가 실행이 안될때(모바일웹) 2
  2. 2011.09.21 이클립에서 Javadoc 생성시 unmappable character for encoding MS949 에러가 발생할때 2
  3. 2011.09.21 크롬 최신버전 14.0.835.186 for Chrome Stable 다운로드 직링크(11.09.21)
  4. 2011.09.21 STS(SpringSource Tool Suite) 활용하기 : RequestMapping 정보 보기 2
  5. 2011.09.20 Apache Velocity 변수가 null 일때 공백으로 출력되게 하기

jQuery ajax 로 로딩되는 페이지에 있는 자바스크립트가 실행이 안될때(모바일웹)

뭐 대부분의 브라우져에서는 앵간해서는 ajax 로 로딩될 페이지에 있는 자바스크립트가 무난하게 실행된다.

그런데 오늘 문득 이때까지 맹근게 모바일에서도 잘 될까하는 궁금함에 아이패드로 접속을 해 보았다.

그런데 이건뭐 지대로 되는게 하나도 없었다.


※ ajax 로 div 안에 다른 페이지 로딩하기
// 요래 하면 여러가지 다양한 ajax 옵션을 줄수 있어서 개인적으로 더 선호한다.
$.ajax({
    url : "로딩할 페이지 URL, ex)/common/list.jsp",
    dataType : "html",
    type : "post",  // post 또는 get
    data : { a:"값1", b:"값2"},   // 호출할 url 에 있는 페이지로 넘길 파라메터
    success : function(result){
        $("#div 아이디").html(result);
    }
});

// 간단하게 요렇게 써도 됨
$("#div 아이디").load("로딩할 페이지 URL", {넘길 파라메터});



왜 그런가 하고 계속 문제를 따라가보니

ajax 로 로딩되는 페이지에 있는 자바스크립트가 전~~~혀 실행이 안됬기 때문에 이벤트 걸어놨던거 등등이 하나도 적용이 안됬기 때문이었다.

구글링과 오만 이상한 짓을 다 해봤는데 아무리 해도 안되서 요만 포기할까 했는데

문득 마지막 순간에 촉이 와서 고걸 해보니까 정상적으로 실행되었다. -_-;;



문제는 바로...........

ajax 로 로딩될 페이지에 <html><head>...</head><body>...</body></html>  요 시리즈 태그가 있었기 때문이었다.

<html><head>...</head><body>...</body></html> 요것들을 다 제거하고



<script>......</script> 

<body></body> 태그를뺀 나머지 원래 소스...


요렇게 바꿔주면 아마 정상적으로 <script></script> 에 있는 스크립트들이 실행될것이다. 

음 그리고 <DOCTYPE> 어쩌고 하는것도 ajax 로 로딩될 페이지에 있으면 빼야 될것이다.~



오만 삽질을 다 한거에 비하면 허무한 결말이다. 

이빠이 사소하지만 그렇다고 해서 해결할 방법을 찾아내기가 쉽지는 않은 그런 꾸리한 문제들 중의 하나로 기억할것 같다. -_-;

앞으로 모바일웹용이던 아니던 프로젝트를 시작할때부터 공지를 잘해서

ajax 로 로딩될 페이지에는 <html><head>...</head><body>...</body></html> 요것을 빼고 코딩을 해야겠다.

이클립에서 Javadoc 생성시 unmappable character for encoding MS949 에러가 발생할때


소스코드의 인코딩이 UTF-8 이나 다른 캐릭터셋으로 작성되어서 나는 에러이다.

에러를 고치기 위해서 Javadoc 생성시  VM options 란에 



-locale ko_KR -encoding UTF-8 -charset UTF-8 -docencoding UTF-8


 요것을 추가해 주면 된다~ 



크롬 최신버전 14.0.835.186 for Chrome Stable 다운로드 직링크(11.09.21)

STS(SpringSource Tool Suite) 활용하기 : RequestMapping 정보 보기

STS 를 설치해서 활용할수 있는 기능중 하나로 spring 설정 파일을 참고해서 현재 프로젝트에 정의된 RequestMapping 정보들을 확인할 수 있다.

먼저 그렇게 하기 위해서는 해당 프로젝트를 스프링 프로젝트로 바꿔줄 필요가 있다.

이미 스프링 프로젝트로 맨들어진 프로젝트는 그냥 냅두면 된다.


기존 프로젝트를 스프링 프로젝트로 바꾸기 위해서는 프로젝트명 > 마우스 오른쪽 버튼 >  Spring Tools > Add Spring Project Nature

를 뽓 클릭하면 된다. 그러면 프로젝트명 옆에 s 라고 아이콘으로 뽓 표시된다.





이제 RequestMapping  정보를 확인해 보자.

고걸 하기 위해서는 Window >  Show View > Other 로 가서 목록중에 있는 Spring Explorer View 를 추가해 주자.



 


Spring Explorer 에는 현재 workspace 에 있는 프로젝트들중 Spring 프로젝트들이 표시되고 Spring 설정내용들을 요약적으로 볼수 있다.





여기에 있는 것들중 <mvc:annotation-driven/> 이 선언된 스프링 설정 xml 파일에서

오른쪽 버튼 클릭 > Spring Tools > Show RequestMappings 를 클릭하면 현재 프로젝트에 선언된 모든 RequestMapping 들의 목록이 보여진다.


Apache Velocity 변수가 null 일때 공백으로 출력되게 하기

템플릿과 모델 데이터를 결합해서 파싱할때 모델에 해당 변수가 없을때 ${ XXX } 같은게 결과로 변환되어 출력된다.

찾아보니까 $!{ XXX } 요렇게 느낌표를 붙여주면 공백으로 변환된다고  하던데 일일히 바꾸기가 귀찮았다.

일일히 바꾸기 귀찮을땐 InvalidReferenceEventHandler 를 한번 써보자

InvalidReferenceEventHandler 인터페이스를 구현한 클래스를 하나 맨들고 밸로시티 Property 로 그것을 사용하도록 설정해 주면 된다.



먼저 InvalidReferenceEventHandler 인터페이스를 구현한 클래스이다.
package com.tistory.stove99;

import org.apache.velocity.app.event.InvalidReferenceEventHandler;
import org.apache.velocity.context.Context;
import org.apache.velocity.util.introspection.Info;

public class InvalidReferenceHandler implements InvalidReferenceEventHandler{

	@Override
	public Object invalidGetMethod(Context context, String reference,
			Object object, String property, Info info) {
		return "";
	}

	@Override
	public boolean invalidSetMethod(Context context, String leftreference,
			String rightreference, Info info) {
		return false;
	}

	@Override
	public Object invalidMethod(Context context, String reference,
			Object object, String method, Info info) {
		return null;
	}
}

invalidGetMethod 메소드에서 리턴을 "" 요걸로 공백을 리턴해 주면 된다.


이제 클래스를 맨들었으니 요걸 밸로시티에서 쓰도록 설정해 보자.

velocityProperties 에 기존에 설정된 프로퍼티에 아래와 같이 추가하면 된다.
eventhandler.invalidreferences.class = com.tistory.stove99.InvalidReferenceHandler

이제 해보면 아마 잘될꺼임.
prev 1 ··· 32 33 34 35 36 37 38 ··· 45 next