플러그인 (Only Korean)

플러그인을 설치, 사용 및 개발에 대하여 설명하는 곳 입니다.


플러그인 설치

● 어빌리스츠 설치하기

  1. 먼저 어빌리스츠 설치를 설치합니다.아래의 설치 프로세스를 참조해주시기 바랍니다.



● 파트너 ID등록

  1. 오른쪽 위의 사용자 아이콘을 클릭하고 관리자를 클릭합니다.

    www.abilists.com


  2. 관리자 아이디 / 패스워드를 입력합니다.

    www.abilists.com


  3. 파트너 / 파트너 등록에서 파트너 등록에서 이용약관을 동의해 주시기 바랍니다.

    www.abilists.com


  4. 파트너 등록은 누구나 무료이며, 이름과 이메일 주소를 등록하므로서 파트너 등록이 완료됩니다.

    www.abilists.com




● 플러그인을 설치

  1. 메뉴이름에는 원하시는 메뉴 이름를 입력합니다.

    (*메뉴 이름을 넣지 않으면, 디폴트로 플러그인 영문 이름이 자동으로 설정이 됩니다.)

    오른쪽의 인스톨을 클릭합니다.

    www.abilists.com


  2. 톰캣을 재시작 합니다.

    www.abilists.com

    리눅스용의 [톰캣을 재시작하기]버튼을 이용하는 것보다는 직접 커맨드를 이용하여 해 주시기 바랍니다.

    $ /usr/local/tomcat/bin/shutdown.sh 
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    
    $ /usr/local/tomcat/bin/startup.sh 
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Tomcat started.
    



설치한 플러그인 사용

● 설치된 플러그인 확인

  1. 설치된 플러그인을 사용하기 위해서는 다시 로그인을 해주시기 바랍니다.

    로그인후, 오른쪽 플러그인 사이트 메뉴에서 확인이 가능합니다.

    또한 위의 메뮤에서 [플러그인 / 플러그인]을 선택하시면, 플러그인 홈 페이지에서 설치된 플러구인을 확인 가능합니다.

    www.abilists.com


  2. 플러그인 홈 페이지에는 설치된 플러그인과 메뉴에는 플러그인 메뉴 이름이 탭형식으로 표시됩니다.

    www.abilists.com


  3. 아래는 근태관리 플러그인 링크를 클릭을 하면 보여지는 화면 입니다.

    www.abilists.com




새 플러그인 개발

● Github에 공개된 플러그인 샘플을 통해 새로운 플러그인을 개발 할 수 있습니다.

  1. 샘플 플러그인 소스가 있는 Github URL입니다.

    새로운 플러그인을 개발하는데 필요한 정보가 공개 되었습니다.

    https://github.com/abilists/plugin_sample
    

    www.abilists.com


  2. 샘플 플러그인 소스가 있는 Github에 접속하여 Clone을 합니다.

    $ git clone https://github.com/abilists/plugins_sample.git
    

  3. 새로운 플러그인을 개발함에 있어 한가지 중요한 규칙이 있습니다.

    sample을 해당 프로젝트 이름으로 변경해주시고 개발해 주시기 바랍니다.

    (아래는 예를 든 경우입니다.) 변경전
    plugin_sample
    
    변경후
    plugin_survey
    


● 샘플 플러그인(plugin_sample)프로젝트로 개발 시스템 환경 설정

  1. 먼저 필요한 유틸리티 프로그램을 Clone하여 Local에 인스톨 합니다.

    io.utility:security:0.0.3
    

    유틸리티 홈에서 아래의 명령으로 설치를 합니다.

    $ gradle install
    

  2. 경우에 따라 아래의 유틸리티를 Clone하여 설치하시면, 개발에 많은 도움이 됩니다.

    io.utility:letter:0.0.7
    io.utility:api:0.0.4
    io.utility:image:0.0.2
    io.utility:validate:0.0.5
    

    www.abilists.com


  3. 샘플 플러그인(plugin_sample) 을 Clone하여 Eclipse내의 프로젝트로 전환한 화면입니다.

    www.abilists.com


  4. plugin_sample을 Jetty를 통해서 Local에서 실행합니다.

    *에러가 발행 할 시에는 gradle clean명령를 한번 실행하고 Jetty를 기동합니다.

    $ cd ~/git/plugin_sample
    $ gradle clean
    $ gradle jettyRun
    

  5. 다음은 plugin_sample을 개발 환경에서 실행한 화면입니다.

    SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]
    31 Mar 2020;01:28:46.024 [Daemon worker] INFO  o.s.w.c.ContextLoader.initWebApplicationContext(304) - Root WebApplicationContext: initialization started
    31 Mar 2020;01:28:46.063 [Daemon worker] INFO  o.s.w.c.s.XmlWebApplicationContext.prepareRefresh(583) - Refreshing Root WebApplicationContext: startup date [Tue Mar 31 01:28:46 JST 2020]; root of context hierarchy
    31 Mar 2020;01:28:46.096 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [applicationContext.xml]
    31 Mar 2020;01:28:46.444 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/common.xml]
    31 Mar 2020;01:28:46.466 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/config.xml]
    31 Mar 2020;01:28:46.484 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/h2.xml]
    31 Mar 2020;01:28:46.520 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/mappingDb.xml]
    31 Mar 2020;01:28:46.540 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/dao.xml]
    31 Mar 2020;01:28:46.555 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/plugins.xml]
    31 Mar 2020;01:28:46.568 [Daemon worker] INFO  o.s.b.f.s.DefaultListableBeanFactory.registerBeanDefinition(821) - Overriding bean definition for bean 'ssConfigService' with a different definition: replacing [Generic bean: class [com.abilists.core.service.SsConfigService]; scope=singleton; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/home/joonk/git/plugin_sample/libs/abilists_core-0.7.7.jar!/com/abilists/core/service/SsConfigService.class]] with [Generic bean: class [com.abilists.core.service.SsConfigService]; scope=; abstract=false; lazyInit=false; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=start; destroyMethodName=stop; defined in class path resource [spring/plugins.xml]]
    31 Mar 2020;01:28:46.569 [Daemon worker] INFO  o.s.b.f.x.XmlBeanDefinitionReader.loadBeanDefinitions(317) - Loading XML bean definitions from class path resource [spring/utilities.xml]
    31 Mar 2020;01:28:46.874 [Daemon worker] INFO  o.s.b.f.a.AutowiredAnnotationBeanPostProcessor.(155) - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
    31 Mar 2020;01:28:46.884 [Daemon worker] INFO  o.s.b.f.a.AutowiredAnnotationBeanPostProcessor.(155) - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
    31 Mar 2020;01:28:47.706 [Daemon worker] INFO  c.a.c.s.SsConfigService.createUuId(87) - Created uuId=72dd9d70-e0ff-4437-b46c-0a0afe7fc122
    31 Mar 2020;01:28:48.563 [Daemon worker] INFO  o.s.j.d.i.ScriptUtils.executeSqlScript(443) - Executing SQL script from class path resource [sql/function_abilists.sql]
    31 Mar 2020;01:28:48.566 [Daemon worker] INFO  o.s.j.d.i.ScriptUtils.executeSqlScript(509) - Executed SQL script from class path resource [sql/function_abilists.sql] in 2 ms.
    31 Mar 2020;01:28:48.571 [Daemon worker] INFO  o.s.j.d.i.ScriptUtils.executeSqlScript(443) - Executing SQL script from class path resource [sql/function_abilists.sql]
    31 Mar 2020;01:28:48.572 [Daemon worker] INFO  o.s.j.d.i.ScriptUtils.executeSqlScript(509) - Executed SQL script from class path resource [sql/function_abilists.sql] in 1 ms.
    31 Mar 2020;01:28:48.578 [Daemon worker] INFO  o.s.j.d.i.ScriptUtils.executeSqlScript(443) - Executing SQL script from class path resource [sql/function_abilists.sql]
    31 Mar 2020;01:28:48.580 [Daemon worker] INFO  o.s.j.d.i.ScriptUtils.executeSqlScript(509) - Executed SQL script from class path resource [sql/function_abilists.sql] in 1 ms.
    31 Mar 2020;01:28:48.651 [Daemon worker] INFO  o.s.w.c.ContextLoader.initWebApplicationContext(344) - Root WebApplicationContext: initialization completed in 2624 ms
    > Building 75% > :jettyRun > Running at http://localhost:9005/