브런치

Alfresco내부의 키중에 Surf의 버그를 찾기 위해서 SurfBug를 토글시켜서 세부정보를 살펴볼 수 있다.

http://localhost:8080/share/page/surfBugStatus

[##_http://zetlos.tistory.com/script/powerEditor/pages/1C%7Ccfile3.uf@24327849516616182C0E60.png%7Cwidth="540"_##]

Enable시키면 Surf관련된 세부정보를 볼 수 있다.

그리고, Alfresco를 가동하면.. 다음과 같이 나타난다..


붉은 색부분을 마우스로 클릭하면...

이 처럼, 상세한 세부정보들을 보여주고, 이를 통해서... 오류를 찾아낼 수 있다.

~.~

그리고, http://localhost:8080/share/service/index Web Script들을 검색하고, 필요한 연계용 코드들을 얻어낼 수 있다.

저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.11 10:50
Alfresco의 한글화를 위해서 내용을 살펴보니...

번역을 위해서, ja 일본어 코드를 보니... 다국어 처리를 위한 유니코드처리때문에 제대로 보이지 않고, 작업할 수 없다.

그래서, 관련자료를 찾아보니... 에디터가 있다.

http://sourceforge.jp/projects/propedit/releases/

역시... 검색하면 다 나온다는...

쩝...


저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.11 09:53

http://lucene.apache.org/solr/features.html

Alfresco의 4.x버전을 사용하면서 의아스러웠던 점은... 한글형태소 검색이었다. 그전까지는 Lucene에서 한글형태소 검색이 안된다는 이유로 그다지 기대를 하지 않았는데, 어제 테스트해보고서는 매우 놀랐다는.

한글 형태소 검색이 매우 정확하게 된다는 점이었다.

특히, full-text검색은 정말 놀라웠다. 내용을 좀더 읽다보니...

Lucene을 확장한 Solr(쏠라라고 읽더라는...)라는 새로운 검색엔진으로 변경되었다는 점이다.

Solr는 Lucene search Library를 이용해서 확장한... 

Solr를 사용하면서 매우 강력한 검색기능을 갖추게 된것이라는 것을...

정말 놀라운 Full-text 검색 기능이 추가된것이다.

내부의 구성요소들은 Solr의 파워툴한 검색기능들로 완전하게 교체되었다는 것이 정말 놀라웠다.

현재 구축하고 있는 'NIPA의 의료분과 관련 ECM'에서 '아키텍처'를 검색하면... 업로드된 pdf, doc, pptx를 모두 full-text검색하여 필요한 자료들을 찾아주었다는 점이다.

차츰.. 이 세부적인 내용들에 대해서 좀더 깊이있게 알아봐야겠다는 생각이 들었다는... ~.~

요즘 정말 재미있다.. ~.~

저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.08 22:10

오늘 저녁에도 Alfresco의 내부구성을 살펴보고 있는데... 데이터형태소의 분석부분에 한글영역이 존재하는 것을 확인하고서는.. 기존의 버전에서 Lucene의 강력한 기능이 있지만, 한글 검색이 안된다는 이야기가 있었는데...

이런 설정자료가 있다니!!!

그래서, 이번 NIPA에서 운영한 소프트웨어아키텍트 포럼의 자료를 정리하려고 샘플자료를 만들고 있는 Site의 정보를 검색해보았다.

현재 등록되어진 MS-word와 Powerpoint의 내부에 현재 꿈꾸는자가 소속되어진 '헬스허브'라는 단어를 검색해보니...

짜잔...

MS-word와 파워포인트 문서내부의 문장중에서 '헬스허브'라는 단어를 모두 검색하여 찾아준다.. ~.~

오호~~~ Lucene의 강력한 기능을 Alfresco에서 느껴보시기를...

DICOM화일의 내용들도 CommandMap을 지정하기만 하면, 필요한 자료들을 대부분 찾아준다니...

이거.. 내부를 들여다 보면 볼수록, 물건이로세~~~

~.~

새롭게 알게된것은 Lucene기반으로 개발되어진 Solr를 사용하여 구성되었다는 점...

저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.05 21:50

MS-Word에서 Alfresco가 설치되어진 ECM을 Repository로 사용하는 방법은 매우 무지.. 간단하다. ~.~ 

SPP(SharePoint Protocol)을 Alfresco가 지원하고 있기 때문이다. 그래서, 복잡하게 웹사이트를 사용하지 않고서도 손쉽게 MS-Office들과 Alfresco를 연결할 수 있다.

0. 단, Alfresco가 설치되어진 서버의 IP를 '신뢰할 수 있는 사이트'로 등록하셔야 합니다. ~.~ 그 다음에 진행하시면 됩니다.

1. 먼저 문서를 만드세요. 그리고, 저장하시구요.

2. 게시에서 '문서작업영역만들기'를 선택하세요.

3. '새 작업 영역 위치'에.. 설치되어진 Alfresco의 주소를 넣으면 됩니다.

    'http://localhost:7070/alfresco' - port번호 7070이 SPP를 지원하는 포트입니다.

    그리고, '만들기'를 누르시면, Alfresco에 해당되는 문서가 업로드 되고, URI가 생성됩니다.

4. 그러면, 이렇게 연결되죠.

    문서를 수정하고서는 '업데이트'를 누르시면 변경됩니다.

5. 잘 등록되면... 이처럼 나타납니다.


6. 등록을 한다음, Web에서 보면 이렇게 나타납니다.


참 쉽죠? ~.~

저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.05 13:02

그 첫번째로 꼽히는... Alfresco...

대표적으로 컨텐츠 관리 시스템(CMS)는 웬만한 시스템의 기본이고 근간에 해당한다. 

Drupal, Interwoven Temsite/Adobe CQ, Sharepoint는 크게 3가지의 방향성을 가지고 있고, 이 3가지의 접근방법을 통합한 방향성이 Alfresco라고 이야기할 수 있다.

어떤 CMS를 만들던지 위에 언급한 내용을 뛰어넘는 것은 없을 것이다. 위와 비슷한 프로젝트를 진행하려는 개발자가 있다면 절대적으로 말리시기를...

특히, Alfresco는 웬만큼 이 수준의 CMS를 넘어선 ECM이 필요한 대부분의 기능과 확장성, 구조를 모두 갖추고 있다.

Content Repository를 어떻게 사용하느냐가 관건일 뿐이다.

의료정보의 영역에서도 Alfresco가 활용될 영역이 정말 많다. ㅇ.ㅇ

W병원시절... 수억을 투자한 KMS가 망가지는 모습을 보고, 그룹웨어에서 제공되어지는 EDMS들이 얼마나 허접한가를 경험한 저로써는... ㅇ.ㅇ

웬만한 디지털 컨텐츠 리파지토리 서비스는 이 영역에서 대부분 흡수되는 것으로 보인다. ( 너무 오버스럽지만.. )

저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.05 12:08

요즘 Alfresco의 매력에 푸욱 빠져있다는... 개인적으로 관심이 있는 의료영상정보를 볼 수 있게 하는 타입을 하나 늘려봤네요. 

이 Alfresco의 장점을 몇가지 이야기해보겠습니다.

1. 공짜버전도 있습니다. ~.~ 오픈소스기반이기 때문에 필요하면 Web상의 기능을 모두 바꿀 수 있습니다.

2. 웹상에서 디지털자료에 대해서 버전관리를 하고, 특정 목적에 맞도록 카테고리 구분이 가능합니다.

3. Office를 비롯해서, 웬만한 이미지 파일은 대부분 Preview를 지원합니다. 필요하다면, 이 포스팅처럼 DICOM파일을 보여줄 수 있는 기능도 손쉽게 붙일 수 있습니다.

4. jBPM의 워크플로우 기능을 활용하면 제안서모음이나, 논문작성들에 필요한 내용들을 별도로 관리하기 좋습니다.

5. 출판사의 저자들이 자신의 저작물을 관리하는 용도로도 괜찮을 듯 합니다.

6. SVN과 같은 버전컨트롤 시스템은 프로그래머들에게는 익숙하지만, 일반인들에게는 사용하기 좀 어렵습니다. 하지만, 똑같은 개념으로 디지털 문서에 대해서 관리가 가능합니다. Word파일을 업로드하고, 해당 파일을 버전관리하면서 업그레이드한다던지, 공동 작업할때에 Lock을 걸어둔다든디, 해당 문서를 특정 플로우로 review를 하게 한다던지 하는 것들이 가능합니다.

7. Lucene의 강력한 검색기능 ( 한글은 안되지만.. )은 의료진의 내부관리에도 좋습니다. 의료영상정보도 가능합니다.

8. 의료기관내에서 간호팀이나 원무팀등에서 필요로 하는 디지털 컨텐츠들을 자유롭게 관리할 수 있습니다.

9. 과거 W병원시절에 몇억들여 만든 KMS시스템도 Alfresco의 기능에 비할바가 못되는 군요. ㅇ.ㅇ 작은 병원에서는 내부의 KMS의 Repository로 활용하셔도 매우 좋을듯 합니다.

Alfresco를 Repositoy로 구성하고, 그 위에 다양한 어플리케이션을 구축하는 것으로 매우 탁월하군요. 더군다나 아래의 구조를 보시면 아시겠지만, FTP, CIFS, WebDAV등의 다양한 파일시스템을 사용할 수 있습니다.

업로드된 컨텐츠를 특정 URI를 부착해서 트위터나, 페이스북, 구글+등에 보내는 것도 매우 손쉽습니다.

아예, GoogleDoc를 내부에서 문서를 만들고 하는 것도 간편하게 되있더군요. 그리고, 속도와 성능이 정말 고속입니다. 개인적으로 웹상에서 다양한 컨텐츠를 다루고 관리하는 용도로는 이 넘보다 더 강력한 녀석을 보지 못한것 같습니다.

구조가 매우 안정적이고, 디지털컨텐츠를 다루는 용도로써 그 활용가치가 매우 크다는 점이 정말 저의 시선을 잡아끌더군요.

  • 문서관리 (Document Management )
  • 웹 컨텐츠 관리 (Web Content Management )
  • 이미지 관리 (Image Management)
  • 기록 관리 (Records Management )
크게 기능은 위의 4가지라고 볼 수 있는데, 웹컨텐츠관리(WCM)은 웹개발을 할 경우에 내부에서 이미지화일을 관리하는 용도로 사용하는 것도 아주 괜찮다는 것을 확인해봤습니다.


  • JSF를 사용하여 UI 컴포넌트 재사용( MyFaces를 이용하여 재사용 가능함 )
  • JSR-170 사용 ( API집합 Java Content Repository - JCR )을 사용
    - 버전관리, 관찰, 잠금, SQL검색, 트랜잭션 기능 구현
  • jBPM을 사용 ( 다양한 비즈니스 프로세스 구현 가능 ), jPDL(jBPM Process Definition Language)를 통해 쉽게 정의 )
  • Apache의 Lucene의 검색엔진 및 인덱싱 기능 ( 단, 한글 형태소는 지원하지 않음 )
  • CIFS 지원 - 윈도우 탐색기로도 접근 가능함.
RSS와 RestFul, WebService등을 지원하니, 다양한 환경에서 Repositoy의 역활을 수행할 수 있는 점도 매우 매력적입니다. 

설치된 디렉토리를 확인해보면, 기본적으로 libreoffice가 보이고, postgresql, swftools가 보입니다. 이 녀석들은 Alfresco가 다양한 오피스문서나 PDF, 플래시파일을 처리할 수 있게 해준다는 것을 알 수 있구요. imagemagick은 대부분의 이미지파일들을 변환하거나 사용할 수 있게 해줍니다.

개인적으로 관심있는 의료영상정보 DICOM정보를 사용하기 위해서 dcm4che를 설치해서 의료영상정보를 관리할 수 있게 해봤습니다.

총 4개의 화일을 수정하거나 추가하시면 되더군요.

먼저, mimettype-map.xml에 새로운  mime타입을 추가합니다.

         <mimetype mimetype="image/dcm" display="DCM File">
            <extension>dcm</extension>
         </mimetype>

이렇게 하면 확장자가 DCM으로 들어오는 녀석을 Alfresco의 commadMap에 연결시켜주는 시작점이 되죠.

그리고, alfresco-global.properties에 해당 mime타입의 정보가 들어왔을때에 연결해줄 녀석을 추가합니다.

### External executable locations ###

dcm.root=F:\\alfresco\\dcm4che
dcm.exe=F:/alfresco/dcm4che/dcm22jpg.exe
.dcm의 확장자를 컨버팅해줄 녀석의 디렉토리와 실행화일을 설정합니다.

그리고, dcm-trasmform.properties 을 추가해서, 기본적인 파라메터 값들을 설정해줍니다. 특별한 것이 없다면, 생략해도 무방한듯 합니다.

# External executable locations
dcm.exe=F:/alfresco/dcm4che/dcm22jpg.exe

# This option on pdf2swf improves the transformation of graphics-heavy pdfs. See ALF-3580.
# poly2bitmap improves the chances of successful transformation. On its own it reduces
#   the resolution of embedded images. subpixels sets the dpi for embedded images.
#dcm.encoder.params=-s poly2bitmap -s subpixels=72
그리고, dcm-transform-context 을 추가하여서, 실제 commandMap을 구성하게 됩니다.

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>

   <bean id="transformer.worker.dcm22jpg" class="org.alfresco.repo.content.transform.RuntimeExecutableContentTransformerWorker">
      <property name="mimetypeService">
         <ref bean="mimetypeService" />
      </property>
      <property name="checkCommand">
         <bean class="org.alfresco.util.exec.RuntimeExec">
            <property name="commandMap">
               <map>
                  <entry key=".*">
                     <value>${dcm.exe} -V</value>
                  </entry>
               </map>
            </property>
            <property name="errorCodes">
               <value>1</value>
            </property>
         </bean>
      </property>
      <property name="transformCommand">
         <bean class="org.alfresco.util.exec.RuntimeExec">
            <property name="commandMap">
               <map>
                  <entry key=".*">
                     <value>${dcm.exe} ${source} ${target}</value>
                  </entry>
               </map>
            </property>
            <property name="errorCodes">
               <value>1</value>
            </property>
         </bean>
      </property>
      <property name="explicitTransformations">
         <list>
            <bean class="org.alfresco.repo.content.transform.ExplictTransformationDetails">
               <property name="sourceMimetype">
                  <value>image/dcm</value>
               </property>
               <property name="targetMimetype">
                  <value>applicationd/jpg</value>
               </property>
            </bean>
            <bean class="org.alfresco.repo.content.transform.ExplictTransformationDetails">
               <property name="sourceMimetype">
                  <value>image/dcm</value>
               </property>
               <property name="targetMimetype">
                  <value>application/jpg</value>
               </property>
            </bean>
         </list>
      </property>
   </bean>

</beans>

일단은, 뭐 복잡한 것은 빼고, 단순하게 Source, Target을 맞추어서 Alfresco가 .dcm파일을 .jpg로 변환하게 하여서 보일 수 있게 하는 것이죠.

자 그렇게 하면, .dcm ( DICOM파일 )을 업로드하면... Alfresco가 의료영상정보를 이렇게 보여줍니다.

정말 쉽죠? ~.~

그 다음부터는 Alfresco의 디지털컨텐츠 능력을 즐기시면 됩니다. 개인적으로 의료기관 내부에서 의료영상정보를 관리하거나 임상자료의 정리용도로 활용을 하셔도 매우 좋을 듯합니다. 

당연하게도 jBPM이 들어있으니, review하는 워크플로우를 작성하거나, Lucene이 있으니 다양한 검색을 적용할 수 있으니, 의료기관내부에서 비싼 PACS를 사용하지 않더라도, 상당부분의 의료영상정보를 관리할 수 있다는 점이죠.

Alfresco의 내부를 보니, 필요하다면... DCM4CHE의 능력을 활용하고, .dcm -> .svg -> svgedit을 application mime타입을 이용하면, 간단한 web pacs viewer로 확장하는 것도 가능하겠더군요.

실제, 해외에서는 dcm4che를 활용해서 pacs archive로 사용하는 사례도 적지않으니, 아주 매력적입니다.

개원가에 계신분에게는 아주 쓸모있을 것 같습니다. ~.~ 당연하겠지만... 아는 산부인과 의사분께서 초음파로 출력되어진 태아의 사진을 프린터로 무료로 찍어주고 싶다고 하신다고 하는 용도로 활용하거나, 임상결과나 연구결과관리의 목적으로 활용하시기에도 어느정도 괜찮을 듯합니다.

저작자 표시
신고
by 꿈꾸는자의 생각의파편들 2013.04.05 08:35
| 1 |