JAVA/SPRING 2013. 5. 20. 21:57

svn 다운로드 주소 : https://faz.googlecode.com/svn/trunk/springtestcase3.1


좀 틀린부분도 있습니다. 너그러이 용서를....




package kr.faz.testcase;


import javax.inject.Inject;


import kr.faz.util.StringUtils;


import org.junit.Before;

import org.junit.Test;

import org.junit.runner.RunWith;

import org.springframework.mock.web.MockHttpServletRequest;

import org.springframework.mock.web.MockHttpServletResponse;

import org.springframework.mock.web.MockServletContext;

import org.springframework.test.context.ContextConfiguration;

import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import org.springframework.transaction.annotation.Transactional;

import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;

import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;


@RunWith(SpringJUnit4ClassRunner.class)

@ContextConfiguration(locations = "classpath:kr/faz/test-servlet-context.xml" )

@Transactional

public class MockControllerTest {

    @Inject

    private RequestMappingHandlerAdapter handlerAdapter;

    @Inject 

private RequestMappingHandlerMapping handlerMapping;

    MockHttpServletRequest request ;

    MockHttpServletResponse response;

    @Before

    public void setUp() {

        request = new MockHttpServletRequest();

        response = new MockHttpServletResponse();

    }

@Test //주문서로 이관

public void urlTest() throws Exception {

setRequest("/test.do?companycode=2&infolidx=2&filelidx=2&orderdate=20130413", "POST");

}


public void setRequest(String uri, String method) throws Exception {

int questionIndex = uri.indexOf("?");

String url = null;

String param = null;

if ( questionIndex != -1 ){

url = uri.substring(0, questionIndex);

param = uri.substring(questionIndex+1);

} else {

url = uri;

}

request.setRequestURI(url);

if ( StringUtils.isNotEmpty(param)) {

String params[] = param.split("&");

for ( String value : params) {

//파라미터 값이 있으면 셋팅

String[] v = value.split("=");

if ( v.length == 2) {

request.addParameter(v[0], v[1]);

}

}

}


System.out.println("URI : "+ request.getRequestURI());

System.out.println("URL : "+ request.getRequestURL());

System.out.println("QueryString : "+ request.getQueryString());

request.setMethod(method);

    Object handler = handlerMapping.getHandler(request).getHandler();

    handlerAdapter.handle(request, response, handler);

    System.out.println("response data : "+ response.getContentAsString());

    request.close();

}

}

posted by 나는너의힘
:
JAVA/SPRING 2013. 5. 15. 01:06

Mybatis 에서 나는 오류

<if test="section != null &amp;&amp; section != '' &amp;&amp; section != 'X' " >

-> 

<if test='section != null &amp;&amp; section != "" &amp;&amp; section != "X" ' >


변경하면 된다.


org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 

### Error querying database.  Cause: java.lang.NumberFormatException: For input string: "X"

### Cause: java.lang.NumberFormatException: For input string: "X"

at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)

at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:364)

at $Proxy12.selectList(Unknown Source)

at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:194)

at kr.faz.goodsinout.dao.impl.GoodsinoutDaoImpl.list(GoodsinoutDaoImpl.java:26)

at kr.faz.goodsinout.service.impl.GoodsinoutServiceImpl.list(GoodsinoutServiceImpl.java:26)

at kr.faz.goodsinout.controller.GoodsinoutController.adminGoodsinoutList(GoodsinoutController.java:70)

at kr.faz.goodsinout.controller.GoodsinoutController$$FastClassByCGLIB$$b9c3d7bc.invoke(<generated>)

at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)

at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)

at kr.faz.aop.SessionCheck.adminSessionCheck(SessionCheck.java:58)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)

at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610)

at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)

at kr.faz.goodsinout.controller.GoodsinoutController$$EnhancerByCGLIB$$a5f0006b.adminGoodsinoutList(<generated>)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:213)

at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126)

at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:96)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578)

at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)

at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:852)

at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:584)

at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)

at java.lang.Thread.run(Thread.java:619)

Caused by: org.apache.ibatis.exceptions.PersistenceException: 

### Error querying database.  Cause: java.lang.NumberFormatException: For input string: "X"

### Cause: java.lang.NumberFormatException: For input string: "X"

at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:107)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:98)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:354)

... 55 more

Caused by: java.lang.NumberFormatException: For input string: "X"

at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)

at java.lang.Double.parseDouble(Double.java:510)

at org.apache.ibatis.ognl.OgnlOps.doubleValue(OgnlOps.java:259)

at org.apache.ibatis.ognl.OgnlOps.compareWithConversion(OgnlOps.java:143)

at org.apache.ibatis.ognl.OgnlOps.isEqual(OgnlOps.java:186)

at org.apache.ibatis.ognl.OgnlOps.equal(OgnlOps.java:578)

at org.apache.ibatis.ognl.ASTNotEq.getValueBody(ASTNotEq.java:51)

at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)

at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)

at org.apache.ibatis.ognl.ASTAnd.getValueBody(ASTAnd.java:56)

at org.apache.ibatis.ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)

at org.apache.ibatis.ognl.SimpleNode.getValue(SimpleNode.java:210)

at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:333)

at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:413)

at org.apache.ibatis.ognl.Ognl.getValue(Ognl.java:395)

at org.apache.ibatis.scripting.xmltags.OgnlCache.getValue(OgnlCache.java:45)

at org.apache.ibatis.scripting.xmltags.ExpressionEvaluator.evaluateBoolean(ExpressionEvaluator.java:29)

at org.apache.ibatis.scripting.xmltags.IfSqlNode.apply(IfSqlNode.java:30)

at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)

at org.apache.ibatis.scripting.xmltags.IfSqlNode.apply(IfSqlNode.java:31)

at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)

at org.apache.ibatis.scripting.xmltags.TrimSqlNode.apply(TrimSqlNode.java:47)

at org.apache.ibatis.scripting.xmltags.MixedSqlNode.apply(MixedSqlNode.java:29)

at org.apache.ibatis.scripting.xmltags.DynamicSqlSource.getBoundSql(DynamicSqlSource.java:37)

at org.apache.ibatis.mapping.MappedStatement.getBoundSql(MappedStatement.java:265)

at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:79)

at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:104)

... 61 more

ERROR: org.springframework.web.servlet.tags.form.HiddenInputTag - Neither BindingResult nor plain target object for bean name 'm' available as request attribute

java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'm' available as request attribute

at org.springframework.web.servlet.support.BindStatus.<init>(BindStatus.java:141)

at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getBindStatus(AbstractDataBoundFormElementTag.java:178)

at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getPropertyPath(AbstractDataBoundFormElementTag.java:198)

at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.getName(AbstractDataBoundFormElementTag.java:164)

at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.autogenerateId(AbstractDataBoundFormElementTag.java:151)

at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.resolveId(AbstractDataBoundFormElementTag.java:142)

at org.springframework.web.servlet.tags.form.AbstractDataBoundFormElementTag.writeDefaultAttributes(AbstractDataBoundFormElementTag.java:126)

at org.springframework.web.servlet.tags.form.AbstractHtmlElementTag.writeDefaultAttributes(AbstractHtmlElementTag.java:421)

at org.springframework.web.servlet.tags.form.HiddenInputTag.writeTagContent(HiddenInputTag.java:77)

at org.springframework.web.servlet.tags.form.AbstractFormTag.doStartTagInternal(AbstractFormTag.java:102)

at org.springframework.web.servlet.tags.RequestContextAwareTag.doStartTag(RequestContextAwareTag.java:79)

at org.apache.jsp.WEB_002dINF.views.admin.goodsinout.goodsinoutList_jsp._jspx_meth_form_005fhidden_005f0(goodsinoutList_jsp.java:313)

at org.apache.jsp.WEB_002dINF.views.admin.goodsinout.goodsinoutList_jsp._jspService(goodsinoutList_jsp.java:212)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)

at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)

at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)

at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)

at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)

at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)

at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)

at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:852)

at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:584)

at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)

at java.lang.Thread.run(Thread.java:619)

posted by 나는너의힘
:
JAVA 2013. 5. 13. 17:15

jsp파일이 인식이 안된다.

tomcat/conf 의 web.xml 이 존재하는지 먼저 살펴봐야 한다.

없으면 복시해 넣는다.


ype Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Could not get RequestDispatcher for [/WEB-INF/views/login.jsp]: Check that the corresponding file exists within your web application archive! org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:219) org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262) org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.

posted by 나는너의힘
:

Daum 에서 안드로이드를 검색하면 

바로가기 안드로드가 있습니다.

클릭


페이지 하단에

Developers 라고 있습니다( 스패너 모양 클릭)


하단에 Get the SDK 버튼 클릭.


우측부분에 Download the SDK ADT Bundle for Windows 를 클릭합니다.




어느순간 라이센스 부분이 나오네요.............

자신의 OS 에 맞는 bit 체크하고 다운로드 하시면 됩니다..


posted by 나는너의힘
:

STS 를 압축해제하면 아래와 같이 나온다.(sts-3.2.0버젼 기준입니다.)


sts-3.2.0.RELEASE 폴더로 들어간다.


폴더에 들어가면 STS.exe 가 있다. 실행한다.


STS 시작시 workspace가 필요하다.가급적 C드라이브의 Root 밑에 폴더 생성 후 실행한다.



실행후 로딩이 되면 아래의 첫 화면 Welcome 화면이 나온다.

Open Dashboard 메뉴는 스프링의 소식이나 추가적인 정보가 표시된다.

Install Extension 은 스프링의 플러그인을 설치할 수 있다.

New and Noteworthly 은 스프링의 새로운 주목할만한;; 정보가 나온다.




Dashboard 를 클릭했을때 화면이다.


Install Extension 화면을 클릭했을때 나오는 화면이다.


posted by 나는너의힘
:












Daum 에서 springsource를 검색한다.

바로가기 사이트를 클릭한다.


Spring Source 사이트에 접속하면 Get Started 에서 

Get Tool Kit(STS)를 클릭한다.


페이지를 이동하면 DOWNLOAD 버튼이 있다. 버튼을 클릭한다.


아래에는 정보를 입력하지 말고 take me to the download page Link 를 클릭한다.


아래 링크와 나와 있는것 처럼 해당하는 버젼을 다운받으면 된다.

가급적 install 버젼보다는 무설치 버전을 다운로드 한다.

다운로드 할때는 디스크 드라이브의 Root에 저장한다. (다른폴더 밑에서 압축 해제 오류가 발생한다.)



압축 해제하면 아래와 같이 된다.


STS.exe 를 실행한다.

posted by 나는너의힘
: