oracle bpel

|

com.oracle.bpel.client.delivery.IDeliveryService

orabpel.jar 필요

classpath 지정되어있는 lib 폴더를 인식 못할경우 WEB-INF안의 lib 폴더에 넣어준다.

'Absorb Knowledge > in addtion' 카테고리의 다른 글

oracle bpel  (0) 2009/05/18
does not exist  (0) 2009/04/28
베블런 효과(veblen effect)  (0) 2008/11/23
이클립스] eclipse 3.3 europa jvm terminated. exit code -1 에러 필요한 기술  (0) 2008/07/10
X-Internet  (0) 2008/03/30
Trackback 0 And Comment 0

does not exist

|
does not exist

jar파일 import  관련 

jdk설치폴더/jre/lib/ext/ jar파일 존재 하는지 확인.

'Absorb Knowledge > in addtion' 카테고리의 다른 글

oracle bpel  (0) 2009/05/18
does not exist  (0) 2009/04/28
베블런 효과(veblen effect)  (0) 2008/11/23
이클립스] eclipse 3.3 europa jvm terminated. exit code -1 에러 필요한 기술  (0) 2008/07/10
X-Internet  (0) 2008/03/30
Trackback 0 And Comment 0

Enter 키 이벤트 설정

|

* JSP 나 HTML에서 실행

<input type="text" name="searchTag" id="searchTag" onkeydown="javascript:if(event.keyCode==13){doSearch();}" />

// keyCode ==13은  Enter키를 의미
//{}안의 함수는 엔터키가 눌렸을때 실행될 javascript함수명을 나타낸다.
Trackback 0 And Comment 0

java.lang 에 정의되어 있는 RuntimeException의 서브 클래스 종류

|
출처 : Beginning Java 2 SDK 1.4 Edition
(정보문화사)

* ArithmeticException

   - 정수를 0으로 나누려고 하는 등의 유효하지 않은 계산 조건을 사용하는 경우

* IndexOutOfBoundsException
   - 객체의 범위를 벗어난 인덱스를 사용하려고 하는 경우. 배열, String객체, 또는 Vector객체가 이에
      해당된다. Vector 클래스는 표준 패키지 java.util에 정의되어 있음.

* NegativeArraySizeException
   - 음의 크기를 갖는 배열을 정의하려 하는 경우

* NullPointerException
   - null을 포함하는 객체 변수를 사용하려는 경우. 정당한 작업을 위해서는 변수가 객체를 참조해야
      한다. 예를 들어, 메서드를 호출하거나 데이터 멤버에 접근하는 경우가 이에 속한다.

* ArrayStoreException
   - 배열 타입에 맞지 않는 객체를 배열에 저장하려는 경우

* ClassCaseException
   - 객체를 부적절한 타입으로 형변환하려는 경우. 즉, 객체가 지정한 클래스도 아니고, 지정한 클래스
     의 수퍼클래스나 서브클래스도 아닌 경우를 뜻한다.

* IllegalArgumentException
   - 메서드가 파라미터 타입과 일치하지 않는 인자를 전달하려는 경우

* SecurityException
   - 프로그램이 보안에 위반되는 부적절한 작업을 수행하려는 경우. 애플릿에서 로컬 컴퓨터에 있는
     파일을 읽으려 하는 경우가 이에 속한다.

* IllegalMonitorStateException
   - 스레드가 자기가 소유하지 않은 객체를 모니터링하려 할 때.

* IllegalStateException
   - 적절하지 않은 때에 메서드를 호출하는 경우

* UnsupportedOperationException
   - 객체가 지원하지 않는 작업을 수행하도록 요청하는 경우
Trackback 0 And Comment 0

JSON

|
Ajax는 기술이 아니라 함께 쓰이면 강력해지는 기술들의 집합이라고 한다.
form요소들을 다루는 것을 Javascript와 XMLHTTPRequest를 사용한 비동기적인 콜백 함수 호출, 그리고 내장된 XML파서와 JSON등과 결합하면, 애플리케이션이 혁신적으로 변모하게 된다.

여기서 JSON은 데이터를 좀 더 쉽게 파싱할 수 있고, 좀 더 간결한 형태로 클라이언트로 보낼 수 있는 방법이다.
JSON 객체는 일반적으로 같은 데이터를 갖는 XML문서보다 경량하고, 작업하는 데 메모리도 덜 사용하게 된다.
JSON의 또다른 이점은 JavaScript의 eval()함수를 이용하여 파싱할 수 있다는 것이다.
브라우저가 JavaScript와 JavaScript의 eval()함수를 지원하기만 하면 JSON을 사용할 수 있는 것이다.

- Ajax on Java for WEB2.0 - 


JSON 라이브러리 다운로드 : http://www.JSON.org 사이트에서 JAVA부분의 json_simple에서 json_simple.jar 를 다운받아서 사용한다.



* JSONObject의 생성
JSONObject jobj = new JSONObject(); //JSONObject를 생성한다.

* 생성된 오브젝트에 key값과 value값을 넣는다.
jobj.put("key값", "value값");



* JSONTEST

= test.html =

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>JSON TEST2</title>
 
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=EUC-KR">
    
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

  </head>
  <script type="text/javascript">
   function createHttp()  //서버와 연동할
  {

   if(window.ActiveXObject)//window

  {

    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

   }

   else     //그외

   {

    xmlHttp = new XMLHttpRequest();

   }

   }
  function startRequest()
  {

   //alert("test");

   createHttp();

   //상태가 변할 때 즉 이벤트가 발생할 때 등록된 함수가 호출

   xmlHttp.onreadystateChange = callback;

   //var str = document.getElementById("star").value;

   //get방식으로 서버에 요청하기 위해 url지정한다. 한글위해 encode..

   var url = "/json1/jsonservlet2";

   xmlHttp.open("GET", url, true);     //전송방식, 서버프로그램, 비동기 여부

   xmlHttp.send(null);                     //get방식이므로...

  }
  
  function callback()
  {

   if(xmlHttp.readyState == 4)         //요청상태 complete

   {

    if(xmlHttp.status==200)           //응답완료

    {

     var i;

     alert("server reply");

     var jsonData = xmlHttp.responseText;

     //json은 eval() 함수로 파싱해서 사용한다.

     var myJObject = eval('('+jsonData+')');

     var cars = myJObject.car;

     var selobj = document.getElementById("list");

     selobj.options.length = 0;

     selobj.add(new Option("---car---",""));

     for(i=0; i<cars.length; i++)

     {

      alert(cars[i]);

      var str= cars[i];

      selobj.add(new Option(str, str));

     }

    }    

   }

   
  }
  </script>
  <body>
    JSONTEST2 <br><br>
    <input type="radio" name="car" value="car" onClick = startRequest()>CAR<br>
    <select id="list" name="list" >
    <option value="">
    -------
    </option>
 </select>

  </body>
</html>


= JsonServlet.java =

 

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.json.simple.JSONArray;
import org.json.simple.JSONObject;


public class JsonServlet2 extends HttpServlet {

 /**
  * The doGet method of the servlet. <br>
  *
  * This method is called when a form has its tag value method equals to get.
  *
  * @param request the request send by the client to the server
  * @param response the response send by the server to the client
  * @throws ServletException if an error occurred
  * @throws IOException if an error occurred
  */

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  response.setContentType("text/html;charset=euc-kr");
  response.setHeader("Cache-Control", "no-cache");
  JSONObject obj = new JSONObject();
  JSONArray obj1 = new JSONArray();
  obj1.add("tico");
  obj1.add("sonata");
  obj1.add("genesis");
  obj.put("car", obj1);
  out.print(obj.toString());
  System.out.print(obj.toString());
  /*
   * javascript에서 처리
   * 1. eval()로 데이터 파싱
   * 2. JSONObject - myobject.actress(key값으로 접근)
   * 3. JSONArray - myobject.car - javascript의 배열이다.
   *    var cars = myobject.car;
   *   for(i=0;cars.length;i++)
   *   {
   *    alert(cars[i]);
   *   }
   */

  
  out.flush();
  out.close();
 }

}

 


'Absorb Knowledge > AJAX' 카테고리의 다른 글

JSON  (0) 2009/03/09
XMLHttpRequest  (0) 2009/02/18
Trackback 0 And Comment 0

BMW X5

|

2009년형 BMW X5 라는데? 
MY DREAM CAR


모델명 독일 - BMW - X5 - 3.0d A/T
차종 SUV/RV 배기량 2993 cc 출시년도 2008년
기본가격 88,900,000원 모델연식 2008 단종년도 -
엔진형식 직렬 6기통 연료타입 Dissel 연료용적 85L
연비 10.5 km/l 연비등급 4등급
구동방식 AWD 기어 A/T
최고출력 235 hp 최대토크 52.9 kg.m
차량중량 2740 kg 전장 4854 mm 전폭 1933 mm
전고 1776 mm 축간거리 2933 mm 윤거전/후 1644/1650 mm
Trackback 0 And Comment 0

가족여행 - 양양(sol beach)

|

 오랫만에 가족들과 1박2일 여행을 다녀왔다.
 목적지는 양양!! sol beach 숙소에 하룻밤 묵고 왔다.

양양 가는길~ 저멀리 표지판에 양양 주문진 빠지는 곳을 나타낸다.


 드디어 도착한 sol beach!! 정말 이쁘게도 만들어 놨구나...

1층 프론트

둥글게 만들어져있는 건물

양쪽에 각 두대의 엘리베이터가 운행된다 ㅋ



방에 들어가서 짐을 풀고 여기저기 구경하고~

방에 있는 미니바~!! 건들면 다 돈이다...ㅠㅠ



짐을 풀고 밖으로 나가서 여기 저기 구경을 했다. 참 건물들 이쁘게 지었다!
콘도앞에는 바로 바닷가로 이어져 있는 길이 있었다.

우리가 쉬어갈 건물

바닷가 앞에 있는 콘도

바닷가로 내려가는 길이 있다

캬 겨울바다!



바닷가를 거닐며 가족끼리 추억을 남겼다...

부모님 ㅋ

부모님과 동생

나랑 지나니

엄니랑 같이 ㅋ



저녁을 먹기위해 동명항으로 향했다~ ㅋ 회닷!!!

동명항에 정박해 있는 배들

멀 먹을까 ㅋㅋ

동명항에서 바라본 저멀리 시내의 모습?

저녁이 되니 무지 추웠다



맛있게 회를 먹고 돌아와 보니 sol beach의 야경은 참으로 멋있었다.

sol beach 입구

sol beach 야경

sol beach 야경

나도 한컷 ㅋ

동생도 한컷



이렇게 하루를 마무리 하고 다음날 우리는 강원랜드로 gogo!!!
한번 땡겨 볼까 했지만 그냥 지나쳐 왔을 뿐이다 ㅋㅋ 하이원 올라가는 길은 눈이 와서 그런지 통제하고 있었다 ㅋ

강원랜드 그다지 썩 땡기는 곳은 아니다 ㅋ



머 이래저래 1박2일 가족여행을 무사히 마치고 돌아왔다~~!!
친구들과 놀러가는 것도 재밌지만 가족끼리 가는것도 역시 굿!!
놀러가는것이 좋을 뿐인가? ㅋ

'Rrard.G > with...' 카테고리의 다른 글

가족여행 - 양양(sol beach)  (0) 2009/02/18
병태!! 2008 새만금 지평선배 전국유도대회 동매달!!  (1) 2008/10/01
목동 야구장  (5) 2008/09/20
7.26~7.27 in 강릉  (0) 2008/08/02
야구장을 가다!!  (0) 2008/06/02
2007년 여름  (0) 2007/09/30
Trackback 0 And Comment 0

XMLHttpRequest

|

open(): 새로운 요청을 서버에 설정함
send(): 요청을 서버에 전송함
abort(): 현 요청에서 벗어남
readyState: 현 HTML 준비상태를 제공함
responseText: 요청에 응답하기 위해 서버에서 재전송하는 텍스트

XMLHttpRequest 객체 생성
<script language = "javascript" type = "text/javascript">
var request = new XMLHttpRequest();
</script>


Microsoft는 Ajax를 지원하지만  버전이 다를 수 있다.
새로운 버전인 경우 Msxml2.XMLHTTP 객체를 사용해야 한다.
구번의 경우 Microsoft.XMLHTTP 객체를 사용해야 한다.

Microsoft 브라우저 지원기능 추가
<script language = "javascript" type = "text/javascript">
var request = false;
try
{
request = new XMLHttpRequest();
}
catch(trymicrosoft)  
{
try
{
request = new ActiveXObject("Msxml2.XMLHTTP");  
}
catch(othermicrosoft)
{
try
{
request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(failed)
{
request = false;
}
}
}

if(!request)
{
alert("Error initializing XMLHttpRequest");
}
</script>


XMLHttpRequest 객체의 open() 메소드를 사용하여 요청을 구성한다.

open() 구성 매게변수
- request-type : 전송 요청형태로 GET/POST가 일반적인 값
- url : 연결된 URL 주소
- asynch : 비동기 요청을 설정할 경우 true, 동기식 요청인 경우 false, 기본은 true
- username : 사용자 인증을 요구할 경우?
- password : 사용자 인증을 요구할 경우 암호 ?

일반적으로 앞의 3개의 매개변수만 사용한다.

open() 메소드로 요청을 구성하고 나면 send()메소드로 요청 전송을 준비한다.

요청 열기 및 요청 전송
<script language = "javascript" type = "text/javascript">
var request = new XMLHttpRequest();
function getInfo()
{
 var parameter = "document.getElementById("parameter").value;     
//요청시 필요한 파라미터값 가정
 var url = "/ajax/nextajax.jsp ? parameter =" + escape(parameter); 
//GET방식으로 파라미터값과 URL
request.open("GET", url, true);  //request-type, url주소, asynch는 비동기형식으로 설정
request.send(null);                 //GET방식으로 파라미터값을 넘겼기 때문에 null로 전송
}


웹페이지 자체에서 벌어지는 현상에 관계없이 웹페에지로 다시 호출할 때 서버에서 개시한다.
onreadystatechange 속성으로 콜백 메소드를 지정한다. 콜백메소드로 서버는 웹페이지 코드로 다시 호출한다.
onreadystatechange 속성은 서버가 요청을 완료하고 콜백 함수가 그 서버에서 온 데이터를 사용하여 웹 폼이나 페이즈를 업데이트 하도록 한다.

HTTP 준비상태
- 0 : 요청이 개시되지 않음(open()을 호출하기 전)
- 1 : 요청을 설정했지만 전송되지는 않음(send()를 호출하기 전)
- 2 : 요청을 설정한 다음 처리중
- 3 : 요청 처리 중
- 4 : 응답 완료. 서버 응답을 얻은 다음 이를 활용

Ajax 프로그래밍의 경우 직접 다뤄야 할 상태는 오로지 상태 4 이다. 이는 서버 응답이 완료되었고 응답 데이터를 점검, 사용하는 데 안전 하다는 것을 의미 한다.

콜백 메소드 설정
<script language = "javascript" type = "text/javascript">
var request = new XMLHttpRequest();
function getInfo()
{
var parameter = "document.getElementById("parameter").value;
var url = "/ajax/nextajax.jsp ? parameter = " + escape(parameter);
request.open("GET", url, true);
request.onreadystatechange = updatePage;    //콜벡 메소드 실행
request.send(null);
}

function updatePage()
{
if(request.readyState == 4)                                  //준비상태 4, 응답 완료
{
if(request.status == 200)                           //확인을 의미하는 상태코드
alert("Server is done!");
else if(request.status == 404)                    //url부적확을 의미하는 상태코드
alert("Request URL does not exist");
else
alert("ERROR:status code is" + request.status);    //error상태코드
}
}
</script>


'Absorb Knowledge > AJAX' 카테고리의 다른 글

JSON  (0) 2009/03/09
XMLHttpRequest  (0) 2009/02/18
Trackback 0 And Comment 0

[Oracle] Startup / Shutdown

|

Oracle 시작 명령:  startup

Oracle 종료 명령:  shutdown [NORMAL | TRANSACTIONAL | IMMEDIATE | ABOART]


◈ NORMAL

- 새로운 데이터베이스 connection은 더 이상 허락하지 않습니다. .

- 현재 users들이 맺고 있는 connection은 그 사용자들이 disconnect할 때까지 기다립니다. .

- 현재 처리 중인 트랜잭션이 있다면, 그 트랜잭션이 끝날 때까지 기다린 후 서버 종료합니다.

- 다음 database Startup시 어떤 instance recovery절차도 필요로 하지 않습니다.


◈ TRANSACTIONAL

- 모든 클라이언트가 특정 인스턴스에서 새로운 트랜잭션을 시작 할 수 없습니다.

- 클라이언트의 진행중인 트랜잭션을 모두 끝마치면 서버를 종료 합니다.

- 모든 트랜잭션이 끝나는 즉시 종료 되며, 이후 시작 시 인스턴스 복구가 필요 없습니다.


◈ IMMEDIATE

- 현재 처리중인 SQL statement가 있다면, 다 stop 시킵니다,

- uncommitted transactions이 있다면, 다 rollback 시킵니다.

- users 들이 disconnect 할때까지 안 기다리고 DB를 close & Dismount 해서
    오라클 인스턴스를 깨끗이 Shutdown 합니다.

 

◈ ABOART

- 현재 처리중인 SQL statements를 모두 abort 시키고 rollback 도 안 시키고,

- users들 다 끊고, close & dismount도 안합니다. 즉, 그냥 꽝 닫습니다.

- 다음번 오라클 시작시에 인스턴스가 자동 복구됩니다.

출처 : Tong - kangfree님의 Database통

'Absorb Knowledge > Oracle' 카테고리의 다른 글

[Oracle] Startup / Shutdown  (0) 2009/02/18
[Oracle] DECODE 함수  (2) 2009/01/12
[Oracle] NVL, NVL2 함수  (0) 2009/01/12
[Oracle] Oracle 10g 설치후 교육용 hr계정 이용하기  (0) 2008/12/02
[Oracle] Like 문  (0) 2008/11/08
테이블에 컬럼 추가  (0) 2008/09/18
Trackback 0 And Comment 0

[Oracle] DECODE 함수

|
DECODE함수는 데이터를 원하는 다른 값으로 바꾸어 주는 함수.
DECODE함수는 첫 번째 인수를 받아들여 받아들인 내용이 조건1과 일치하면 값1로 조건2와 일치하면 값2로 바꾸어 준다.

DECODE(column|표현식, 조건1, value1, 조건2, value2, 조건3, value3,...)

예를 들어 
sql> select  deptno, DECODE(deptno, 10, '영업부',
                                                       20, '기획부',
                                                       30, '생산부',
                                                       40, '전산부') AS "부서명"
      from dept;

일경우 dept 컬럼의 deptno가 10일경우 '영업부', 20일경우 '기획부', 30일경우 '생산부', 40일경우 '전산부'로 나타내주게 된다.

'Absorb Knowledge > Oracle' 카테고리의 다른 글

[Oracle] Startup / Shutdown  (0) 2009/02/18
[Oracle] DECODE 함수  (2) 2009/01/12
[Oracle] NVL, NVL2 함수  (0) 2009/01/12
[Oracle] Oracle 10g 설치후 교육용 hr계정 이용하기  (0) 2008/12/02
[Oracle] Like 문  (0) 2008/11/08
테이블에 컬럼 추가  (0) 2008/09/18
Trackback 0 And Comment 2
prev | 1 | 2 | 3 | 4 | 5 ... | 13 | next