사용예는 freemarket 공식 홈페이지보다 이게 더 나은 것 같음...

 

출처

http://www.mimul.com/pebble/default/2007/02/12/1171290600000.html

 

 

FreeMarker는 Velocity와 마찬가지로 templating 언어이다.
우리가 Jsp를 코딩하다보면 날코딩으로 생산성이 떨어진다. 그래서 우리는 좀더 편리하게 사용하기위해서 템플릿 엔진을 사용한다.
그리고 가장 큰 장점은 아래의 1번에서 보듯이 매크로 기능으로 기능을 만들어서 사용할 수 있다는 점이다.
다음은 FreeMarker의 사용 방법을 기술했다.

1. @macro
 - 프리마커 템플릿 전역에서 공통으로 사용되는 UI 디펜던트한 함수는 매크로로 만들어 여러 ftl에서 사용할 수 있도록 해준다. 샘플을 참고하도록 한다.
 - 형식 : <@매크로명 변수1, 변수2, ... />
 - 샘플1) 긴 문자열을 적당한 크기로 자르는 기능의 매크로
   *사용법 : <@trimX ${item.title}, 20 />
   *매크로 :
   <#macro trimX src max><#compress>
   <#if src?length &gt; max>
      ${src[0..max-1]}..
   <#else>
      ${src}
    </#if>
   </#compress></#macro>

 - 샘플2) YYYYMMDD 형식의 문자열을 YYYY.MM.DD 형식으로 변환하는 매크로
   *사용법 : <@parseDay ${item.regdate} />
   *매크로 :
   <#macro parseDay src><#compress>
   <#if src?length == 8>
        ${src[0..3]}.${src[4..5]?number}.${src[6..7]?number}
   <#else>
      ${src}
    </#if>
   </#compress></#macro>

2. #list
 - 배열 형식의 오브젝트를 루핑 처리할때 사용하는 프리마커 지시자이다. “로컬엘리어스_index” 라는 변수는 0부터 시작하는 시퀀스번호이다.
 - 형식 : <#list 배열객체 as 로컬엘리어스명></#list>
 - 샘플1)
   <#list LIST as item>
      번호 : ${item_index+1} | 이름 : ${item.name} | 아이디 : ${item.id}
   </#list>

3. #if
 - 프리마커 조건문에 사용되는 지시자이다.
 - 형식 : <#if 조건식></#if>
 - 샘플1) string 비교
   <#if ENTITY.usergrade == “A” >......</#if>
 - 샘플2) number 비교
   <#if ENTITY.userclass?number == 3>.....</#if>
 - 샘플3) boolean 비교
   <#if ENTITY.isAuth()>.....</#if>

4. #break
 - Loop문을 중단하고 다음 스크립트로 넘어가려고 할때 사용되는 지시자이다.
 - 형식 : <#break>
 - 샘플1) 루프문을 실행하는 중 5번째에서 escape 하는 예
 <#list LIST as item>
  <#if item_index &gt; 3><#break></#if>
 </#list>

5. #assign
 - 프리마커내에서 사용자 정의 로컬변수가 필요할 때 사용하는 지시자이다.
 - 형식 : <#assign 로컬변수명 = 초기화값>
 - 샘플1) <#assign CHECK = item_index>

6. [x...y]
 - 문자열의 일정 범위를 자를때 사용하는 함수
 - 형식 : ${문자열[1..5]}
 - 샘플1) ${item.name[1..5]}

7. ?has_content
 - 리스트형 오브젝트가 null이 아니고 최소 1개 이상의 컨텐츠를 가지고 있는지 체크하는함수로써 ?has_content는 ?exists와 ?size>0 두가지 체크를 동시에 해주는 함수이다.
 - 형식 : 리스트오브젝트?has_content
 - 샘플1) <#if LIST?has_content>.....</#if>

8. ?exists
 - NULL체크 함수. if_exists는 <#if 지시자 없이도 사용할 수 있게 해주는 표현식이다.
 - 형식 : 오브젝트?exists
 - 샘플1) <#if ENTITY.username?exists>${ENTITY.username?substring(0, 5)}</#if>
 - 샘플2) <#if LIST?exists && LIST?size &gt; 0>.....</#if>
 - 샘플3) ${ENTITY.username?if_exists}

9. ?default
 - NULL값을 대체해주는 함수
 - 형식 : 오브젝트?default(디폴트값)
 - 샘플1) ${item.userclass?default(“99”)}
 - 샘플2) ${item.age?default(20)}

10. ?string
 - 문자열로 형변환하는 함수
 - 형식 : 오브젝트?string
 - 샘플1) <#if item.age?string == “29”>.....</#if>
 - 샘플2) ${item.regdate?string(“yyyy/MM/dd HH:mm”)}
 - 샘플3) 숫자를 통화표시로 나타내는 예
  <#assign MONEY = 1234567>
  ${MONEY?string(",##0")}

11. ?number
 - 숫자로 형변환하는 함수
 - 형식 : 오브젝트?number
 - 샘플1) <#if item.userclass?number &gt; 3>.....</#if>
 - 샘플2) ${LIST_POINTS[item.gid?number].entityname?default(“”)}

12. ?js_string
 - 문자열을 자바스크립트에 유효하도록 필터링해주는 함수. 문자열내에 싱글쿼테이션(‘)등이 포함되어 스크립트에 오류가 나는것을 방지하기 위하여 사용되는 함수이다. 화면상에는 HTML 태그로 취급된다.
 - 형식 : 오브젝트?js_string
 - 샘플1) 문자열 <img src=’/image/enterprise.gif’>을 js_string으로 처리했을때 소스보기를 하면 <img src=\’/image/enterprise.gif\’>으로 출력된다.
 - 샘플2) <a href=”javascript:getName(‘${item.homeurl?js_string}’);”>

13. ?html
 - 문자열을 HTML Symbolic Entity로 필터링해주는 함수. 문자열내의 HTML태그등을 깨뜨려 화면상으로 출력되도록 할때 사용하는 함수이다. 화면상에 HTML태그가 아닌 일반 문자열로 취급된다.
 - 형식 : 오브젝트?html
 - 샘플1) 문자열 <img src=’/image/enterprise.gif’>을 html로 처리하면 화면상에 <img src=’/image/enterprise.gif’> 로 출력되고 소스보기를 하면 &lt;img src=’/image/enterprise.gif’&gt;로 출력된다.

14. ?index_of
 - 특정 문자(열)가 시작되는 위치를 정수형으로 반환한다. 인덱스는 0부터 시작됨.
 - 형식 : 오브젝트?index_of(특정문자)
 - 샘플1) “abcde”?index_of(“c”) 는 2를 반환한다.

15. ?replace
 - 문자열의 일부를 주어진 문자로 대체하는 함수
 - 형식 : 오브젝트?replace(찾을문자열, 대체할문자열)
 - 샘플1) ${item.content?replace(“>”, “&gt;”)}

16. item_has_next
 -리스트 객체의 다음 컨텐츠가 존재하는지(EOF) 체크하는 함수
 -형식 : 리스트엘리어스이름_has_next
 -샘플1) 이름과 이름사이에 , 를 찍어주되 마지막은 찍지 않는 경우의 예
  <#list LIST as item>
      ${item.name?default(“”)}<#if item_has_next>,</#if>
  </#list>

 

 

Posted by '김용환'
,

인증서 문제

web 2008. 12. 15. 23:17

ssl 서버를 구축할 때, 다음의 문제가 생겼다.

 

 

[Mon Dec 15 11:34:07 2008] [warn] RSA server certificate CommonName (CN) `VeriSign Trial Secure Server Test Root CA' does NOT match server name!?
[Mon Dec 15 11:34:07 2008] [error] Unable to configure RSA server private key
[Mon Dec 15 11:34:07 2008] [error] SSL Library Error: 185073780 error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch

 

해결은

openssl x509 -noout -text -in ssl_2008_customer.crt

openssl rsa -noout -text -in ssl_2008_customer.nodes.key

 

이 두개의 modulus가 동일을 한지 확인하면 된다. 서로 같지 않으므로, 이 것은 제대로 ssl을 전달해주지 못한 것으로 판단

 

 

 


출처
http://www.enterprisessl.com/ssl-certificate-support/server_faq/ssl-server-certificate-apache.html


Error: "OpenSSL:error:0B080074:x509 certificate outines:x509_check_private_key:key values mismatch"
This error message occurs if you are using the incorrect certificate or private key during installation. So you need to use the matching key and certificate files.
To check that the public key in your cert matches the public portion of your private key, view both files, and compare the modulus values with the following instructions:
To view the certificate:
openssl x509 -noout -text -in certfile
To view the key:
openssl rsa -noout -text -in keyfile

The "modulus" and "public exponent" portions in the key and the certificate must match exactly. If the "modulus" do not match exactly then you are using either the incorrect private key or certificate.

 

 

 

'web' 카테고리의 다른 글

rewrite에서 exclude 사용하기  (0) 2009.01.30
자바스크립트 - Dom 생성하기  (0) 2009.01.06
Apache SSL 서버 만들기  (0) 2008.11.25
SQL Injection 공격에 따른 웹 어플 대응 (java)  (0) 2008.11.07
아파치에서 MaxClients 수정  (0) 2008.09.02
Posted by '김용환'
,

: bad interpreter:  No such file or directory

 

파일이 바이너리인지, 아니면,  \r\n CR/LF 문제인지 확인하면 오케

 

 

 

 

 

 

'unix and linux' 카테고리의 다른 글

bash 에서 ( 사용관련 팁  (0) 2009.03.24
SED 튜터리얼 sed tutorial  (0) 2009.03.13
/etc/sudoers  (0) 2008.11.19
ipcs  (0) 2008.11.07
파일 길이가 큰 파일 옮기기 (split를 이용하여 리눅스 파일 나누기 합치기)  (0) 2008.06.26
Posted by '김용환'
,

 

제한은 없다.. 다만 시스템 리소스와 연관관계가 있음..

다음 대답 보기

 

http://kbase.redhat.com/faq/docs/DOC-5379

 

 

 

What would be the maximum number of NFS clients supported by a Red Hat Enterprise Linux 3 NFS server?

Created on: Jan 4, 2005 6:00 PM - Last Modified:  Jan 6, 2005 6:00 PM

There is no hard limit for the NFS client count - it depends on the system resources (memory, filesystem, storage subsystem performance, etc). However, the socket buffer where the nfsds is listening to (obtain the requests from) roughly has room for

 



 (number_of_nfsd + 3)

 

requests. Adding the fact that each nfsds always carries its work until completion before grabbing the next request, a Red Hat Enterprise Linux 3 NFS server can take

 



 ((number_of_nfsd * 2) + 3)

 

simultaneous requests at a time.

 

Note: This is a theoretical number and it depends on the resources and the nature of the requests. For example, if any NFSD is blocked in the I/O path, the unprocessed requests is still sitting in the socket buffer and may get timeouts from the client side. Re-transmits would occur and the server capacity would start to drop.

 

 

Posted by '김용환'
,

오늘의 영어

영어앤영문권 2008. 11. 26. 19:02

perv

영어사전에는 호주 속어로 되어 있지만, weeds 드라마를 보면, perv라는 단어를 쉽게 쓰고 있다.pervert 의 약자.

perv
호주·속어 n.
1 색정적인 시선
2 성도착자(pervert)
vi. 색정적인 으로 보다at, on

 

 

snoop  /snup/   (snoops, snooping, snooped, snoopers)

기웃거리며 돌아다니다. 어정거리다.

예) Were you snooping?? 누군가 나를 snooping하고 있다면, none of business하며 철퇴를!!

 

1. VERB
If someone snoops around a place, they secretly look around it in order to find out things.
    Ricardo was the one she'd seen snooping around Kim's hotel room.

   Snoop is also a noun. N-COUNT
    The second house that Grossman had a snoop around contained `strong simple furniture'.

snooper N-COUNT
    St Barth's strange lack of street names is meant to dissuade journalistic snoopers.

2. VERB
If someone snoops on a person, they watch them secretly in order to find out things about their life.
    Governments have been known to snoop on innocent citizens.

 

 

가정부

maid, housemaid, 이렇게 영어사전에서 표현하지만. 실제 미국에서는 이보다도

domestic helper라는 단어를 더 쓰는 것 같음..

 

예제

My husband and I are are looking for a full time fluent Mandarin speaking domestic helper / nanny to live with us in our home in Kuwait. We currenlty do not have any children but plan to have one within the next two years. We are looking for someone honest, hardworking, friendly, who can preform household duties and is good with children.
The incumbent will have their own room and bathroom with their own separate entrance. We will provide food and other essential amenities. If interested please email us on mailto: fatspictures@yahoo.com

 

 

sleepover  /slipov/   (sleepovers)  also sleep-over

N-COUNT
A sleepover is an occasion when someone, especially a child, sleeps for one night in a place such as a friend's home.

 

 

arson  /sn/

N-UNCOUNT
Arson is the crime of deliberately setting fire to a building or vehicle.
    a terrible wave of rioting, theft and arson.

 

 

You need to get laid

weeds에 나온 말인데, 무슨 말인지 초반에 몰랐다.

의외로 많은 영화에서 나오는 말인데..  성관계를 가질 필요가 있다는 말이다.

http://tvtropes.org/pmwiki/pmwiki.php/Main/YouNeedToGetLaid

구글에서 검색하면, 대충 의미는 알수 있음.

 

 

 

resilient  /rzlint/

1 되튀는;원상으로 돌아가는, 탄력 있는
2 기운회복하는
3 활한, 랄한(buoyant)

1. ADJ : usu v-link ADJ
Something that is resilient is strong and not easily damaged by being hit, stretched, or squeezed.
    an armchair of some resilient plastic material.

resilience N-UNCOUNT : also a N
    Do your muscles have the strength and resilience that they should have?

2. ADJ : usu v-link ADJ
People and things that are resilient are able to recover easily and quickly from unpleasant or damaging events.
    When the U.S. stock market collapsed in October 1987, the Japanese stock market was the most resilient.

resilience N-UNCOUNT : also a N
    the resilience of human beings to fight after they've been attacked.

Resilient people are mentally tough

보통 Resilent people은 위의 말처럼 터프하다라고 표현한다.

http://blog.bigpromotions.net/index.php/2008/11/19/7-secrets-to-resilience-during-tough-times/

Resilient people are mentally tough. Think of them like the Energizer bunny — they keep going no matter what. Those who are resilient are able to overcome difficult situations and are ready to seek solutions to get back on track. But how can you develop this kind of strength and perseverance?

 

 

I beseech you

= I'm begging you

 

Stinky eye 인상찌뿌프리며 evil eye로 바라보는 것

 

 

foreskin  /fskn/   (foreskins)

N-VAR
A man's foreskin is the skin that covers the end of his penis.

 

 

negligence and stupidity  과실 치사

http://soilcatholics.blogspot.com/2008/09/breath-taking-stupidity-and-negligence.html

 

 

가사 household things, household work

가계 household economy

가사 용품 household goods

가정적인 일 household matters

 

 

 

 

 

 

 

 

 

Posted by '김용환'
,

<1. >
flock  /flk/   (flocks, flocking, flocked)
 
1. N-COUNT-COLL : usu N of n
A flock of birds, sheep, or goats is a group of them.
    They kept a small flock of sheep.
    They are gregarious birds and feed in flocks.

<2. >
stellar  /stel/ 
 
1. ADJ : ADJ n
Stellar is used to describe anything connected with stars.
    A stellar wind streams outward from the star.

2. ADJ : usu ADJ n
A stellar person or thing is considered to be very good.
    The French companies are registering stellar profits.
    outstanding  


<3.>
chasm  /kzm/   (chasms)
 
1. N-COUNT
A chasm is a very deep crack in rock, earth, or ice.

2. N-COUNT : usu with supp, oft N between pl-n
If you say that there is a chasm between two things or between two groups of people, you mean that there is a very large difference between them.
    the chasm that divides the worlds of university and industry.
    the chasm between rich and poor in America.
    gulf, gap  

<4. >
mimic  /mmk/   (mimics, mimicking, mimicked)
 
1. VERB
If you mimic the actions or voice of a person or animal, you imitate them, usually in a way that is meant to be amusing or entertaining.
    He could mimic anybody.
    imitate  

2. VERB
If someone or something mimics another person or thing, they try to be like them.
    The computer doesn't mimic human thought; it reaches the same ends by different means.
    imitate  

3. N-COUNT
A mimic is a person who is able to mimic people or animals.


<5>. bail out
A bailout, in economics and finance, is an injection of liquidity given to a bankrupt or nearly bankrupt entity, such as a corporation or a bank, in order for it to meet its short-term obligations. Often bailouts are by governments, or by consortia of investors who demand control over the entity as the price for injecting funds.

 

<6>. bar mitzvah
bar mitz·vah〔〕〔Heb.〕 n. 바르 미츠바 《유대교의 13세 남자 성인식》;그 식을 하는 소년
━ vt. <소년에게> 성인식을 베풀다

<7> on the condition ...
문맥상.... anonymous 라는 의미로 사용되기도 함

<8>
flux

 
N-UNCOUNT : oft in N
If something is in a state of flux, it is constantly changing.
    Education remains in a state of flux which will take some time to settle down.
 
<9>
 
1. VERB
If you defuse a dangerous or tense situation, you calm it.
    The organization helped defuse potentially violent situations.

2. VERB
If someone defuses a bomb, they remove the fuse so that it cannot explode.
    Police have defused a bomb found in a building in London.

 

 

 

Posted by '김용환'
,

http://www.fdic.gov/

 

미국에 있는 일종의 지급 보험 공사정도 되는 것 같다.

http://www.fdic.gov/about/index.html

 

FDIC Mission, Vision, and Values

Mission

The Federal Deposit Insurance Corporation (FDIC) is an independent agency created by the Congress that maintains the stability and public confidence in the nation’s financial system by insuring deposits, examining and supervising financial institutions, and managing receiverships.

Vision

The FDIC is a leader in developing and implementing sound public policies, identifying and addressing new and existing risks in the nation’s financial system, and effectively and efficiently carrying out its insurance, supervisory, and receivership management responsibilities.

Values

The FDIC and its employees have a long and continuing tradition of distinguished public service. Six core values guide FDIC employees as they strive to fulfill the Corporation’s mission and vision:

Integrity

FDIC employees adhere to the highest ethical standards in the performance of their duties and responsibilities.

Competence

The FDIC maintains a highly skilled, dedicated, and diverse workforce.

Teamwork

FDIC employees work cooperatively with one another and with employees in other regulatory agencies to accomplish the Corporation’s mission.

Effectiveness

The FDIC responds quickly and successfully to identified risks in insured financial institutions and in the broader financial system.

Financial Stewardship

The FDIC acts as a responsible fiduciary, consistently operating in an efficient and cost-effective manner on behalf of insured financial institutions and other stakeholders.

Fairness

The FDIC treats all employees, insured financial institutions, and other stakeholders with impartiality and mutual respect.

 

 

 

Posted by '김용환'
,

Fool me once, shame on you; Fool me twice, shame on me...

 

이 말은 정말 잘 쓰이는 문구로서, 내가 또 당하면 바보다 라는 뜻의 문맥상 한국말과 같고..

 

"Fool me once
Shame on you
Fool me twice
Shame on me."

--Chinese Proverb.

Source: Forbes Scrapbook of Thoughts on the Business of Everyday Life. Triumph, Chicago, IL. 1995

Verified by: GM, 6/98

 

영어사전엔 이렇게 써있다.

 

This means that you should learn from your mistakes and not allow people to take advantage of you repeatedly.

 

 

 

 

 

 

Posted by '김용환'
,

Apache SSL 서버 만들기

web 2008. 11. 25. 06:15

 

1) openssl 확인 할 것

 

rpm -qa | grep openssl


openssl-devel-0.9.7a-43.17.el4_6.1
xmlsec1-openssl-1.2.6-3
openssl-0.9.7a-43.17.el4_6.1
openssl096b-0.9.6b-22.46

 

2) 개인키 생성

openssl genrsa -des3 -out 파일명.key 1024

(패스워드 대충 치기)

 

3) 개인키 확인

openssl rsa -noout -text -in  파일.key

 

4) CSR 파일 생성

openssl req -new -key ssl_2008_pubids.nodes.key -out ssl_2008_pubids.csr

 

5) 인증서 받기

http://www.verisign.com 에 접속하여 FREE SSL Trial 을 클릭합니다.

원래는 돈주고 사야 하나.. 14 일짜리 trial을 신청하고, 이메일을 통해서 인증서를 받는다.

다른 것은 대충 써도 되나, 이메일만큼은 정확하게 쓸 것!!

 

After testing your Trial SSL Certificate, you will need to purchase a full-service Secure Site SSL Certificate.
As VeriSign has a full range of products to choose from, a sales representative will contact you to assist in
implementing an appropriate security solution specific to your business requirements. Should you wish to contact
our sales person immediately, please dial (866) 893-6565 option 3 or send an email to internet-sales@verisign.com.

Thank you for your interest in VeriSign!

 

6) 메일의 인증서를 복사하고 사용

   임의의파일명.crt 의 파일명을 만든다.

 

cat > 파일명.crt

-----BEGIN CERTIFICATE-----

...

-----END CERTIFICATE-----

 

7) 아파치 설정 추가

 <IfModule mod_ssl.c>
        SSLRandomSeed startup builtin
        SSLRandomSeed connect builtin
        Listen 443
        AddType application/x-x509-ca-cert .crt
        AddType application/x-pkcs7-crl    .crl
        SSLPassPhraseDialog  builtin
        SSLSessionCache         dbm:/usr/local/apache/logs/ssl_scache
        SSLSessionCacheTimeout  300
        SSLMutex  file:/usr/local/apache/logs/ssl_mutex
</IfModule>

<VirtualHost *:443>
    DocumentRoot /usr/local/tomcat/webapps/ROOT
    Servername *.google.com

.....

 

        <IfModule mod_ssl.c>
                SSLEngine on
                SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:!SSLv2:+EXP:+eNULL
                SSLCertificateFile /usr/local/apache/conf/ssl.crt
                SSLCertificateKeyFile /usr/local/apache/conf/ssl.key
                SSLCACertificateFile /usr/local/apache/conf/ssl.intermediate
                <Directory "/usr/local/apache/cgi-bin">
                SSLOptions +StdEnvVars
                </Directory>
                SetEnvIf User-Agent ".*MSIE.*" \
            nokeepalive ssl-unclean-shutdown \
            downgrade-1.0 force-response-1.0
        </IfModule>
</VirtualHost>  

 

 

8) 아파치 리스타트

'web' 카테고리의 다른 글

자바스크립트 - Dom 생성하기  (0) 2009.01.06
인증서 문제  (0) 2008.12.15
SQL Injection 공격에 따른 웹 어플 대응 (java)  (0) 2008.11.07
아파치에서 MaxClients 수정  (0) 2008.09.02
oscache 사용 간단기  (0) 2008.08.27
Posted by '김용환'
,

오라클 - DB crash

DB 2008. 11. 13. 19:51

 

 

 

오라클의 특정 테이블에서 block corruption이 발생하여 오라클 자체적으로 자동 복구를 수행하다가  DB crash 발생하여 한게임 전반에 장애가 발생하는 경우가 발생

 

block corruption에 대한 내용

http://www.cs.umbc.edu/help/oracle8/server.815/a67772/repair.htm

http://www.quest-pipelines.com/newsletter-v4/0103_C.htm

 

 

 

 

 

 

Posted by '김용환'
,