[출처 : https://cafe.naver.com/ ]
MOOC 강좌 리스트를 확인하고 지금 바로 무료로 수강해 보세요!
■ KOCW : Korea Open CourseWare
http://www.kocw.net/home/index.do
■ K-MOOC : 한국형 무크
http://www.kmooc.kr/
■ 스누온 : 서울대학교
https://etl.snu.ac.kr/login.php
■ KOOC : 한국과학기술원(KAIST)
https://kaist.edwith.org/
■ STAR MOOC : 과학기술 분야 온라인 공개강좌 서비스
https://www.starmooc.kr/
■ MOOC: 연세대학교 온라인 공개강좌
http://mooc.yonsei.ac.kr/
■ KeduX(케이에듀엑스) : 울산과학기술원
http://www.kedux.kr/
■ U-MOOC : 울산대학교
http://umooc.ulsan.ac.kr/usc/main/layout.do
■ OCW : 서강대학교
http://ocw.sogang.ac.kr/main/main.jsp
■ 스노우 : 숙명여대
http://www.snow.or.kr/
■ HOWL : 한양대
http://www.howl.or.kr/
■ OCW : 중앙대
http://ocw.cau.ac.kr/
■ OCW : 한국외국어대학교
http://contents.hufs.ac.kr/
■ OCW : 성균관대학교
https://socw.skku.edu/
■ MOOC 2.0 : 동티모르 국립대
https://www.khmooc.org/home
■ 경기도 지식캠퍼스
https://www.gseek.kr/main/intro
■ 경기도일자리재단
https://www.dream.go.kr/dream/index.do
■ 광주광역시 시민사이버학습센터
https://elearning.gwangju.go.kr/
■ 서울시 평생학습포털
http://sll.seoul.go.kr/main/MainView.dunet
■ 플라톤아카데미TV
https://www.youtube.com/user/platonacademytv/videos
■ 배움나라(한국정보화진흥원)
http://www.estudy.or.kr/estudy2.0/kor/index.asp
■ 생활코딩
https://opentutorials.org/course/1
■ 촉아카데미
http://www.playchalk.com/main/
2018년 10월 22일 월요일
2016년 11월 4일 금요일
HTML5 + CSS3
[출처 : http://www.ppomppu.co.kr/ ]
Do it! HTML5+CSS3 웹표준의 정석-1강 (왜 html과 css를 공부해야 할까)
http://youtu.be/A7rPsTWNoQY
Do it! HTML5+CSS3 웹표준의 정석-2강 (html5 시맨틱 태그)
http://youtu.be/v558XsxFh_o
Do it! HTML5+CSS3 웹표준의 정석-3강 (시맨틱 태그로 웹표준에 맞는 문서 만들기)
http://youtu.be/klIErsauYJk
Do it! HTML5+CSS3 웹표준의 정석-4강 (IE를 고려한 시맨틱 태그)
http://youtu.be/Fw9u_aIjYSE
Do it! HTML5+CSS3 웹표준의 정석-5강 (텍스트 관련 태그들)
http://youtu.be/qtWafrsWi9A
Do it! HTML5+CSS3 웹표준의 정석-6강 (목록과 텍스트 태그 연습하기)
http://youtu.be/50ioZsL34KM
Do it! HTML5+CSS3 웹표준의 정석-7강 (하이퍼링크를 만드는 태그)
http://youtu.be/amDPFRh4Io4
Do it! HTML5+CSS3 웹표준의 정석-8강 (HTML5와 이미지)
http://youtu.be/iCnLr9durpQ
Do it! HTML5+CSS3 웹표준의 정석-9강 (이미지 맵으로 이벤트 페이지 만들기)
http://youtu.be/QOLJmvFJcKM
Do it! HTML5+CSS3 웹표준의 정석-10강 (HTML5와 멀티미디어)
http://youtu.be/QxkcTJPL5Xw
Do it! HTML5+CSS3 웹표준의 정석-11강 (다양한 input 태그)
http://youtu.be/SSV63gkvBSo
Do it! HTML5+CSS3 웹표준의 정석-12강 (input 태그의 속성)
http://youtu.be/hapY8EVIUn8
Do it! HTML5+CSS3 웹표준의 정석-13강 (상품 주문서 만들기)
http://youtu.be/DMO03XhJNKQ
Do it! HTML5+CSS3 웹표준의 정석-14강 (CSS기초)
http://youtu.be/4jdFBPye7FI |
2014년 6월 5일 목요일
SAP JCO설정(Server Side)
[출처 : http://itpe.me/ ]
1. Service Marketplace에서 SAP JCO를 다운로드합니다. http://service.sap.com/connectors 다운1다운2
2. 설치할 서버에 SAP JCO 파일 저장합니다.
3. 서버에 classpath, path 환경변수 지정 후, sapjco.jar 실행합니다.
4. 특별한 에러가 없다면, 예제 소스를 이용해 컴파일 합니다.
5. SAP Destination 설정
설치버전 : SAP JCo 2.1.9, JDK1.5.0
1. Service Marketplace에서 SAP JCO를 다운로드합니다. http://service.sap.com/connectors 다운1다운2
2. 설치할 서버에 SAP JCO 파일 저장합니다.
3. 서버에 classpath, path 환경변수 지정 후, sapjco.jar 실행합니다.
4. 특별한 에러가 없다면, 예제 소스를 이용해 컴파일 합니다.
/**
* Example5.java - Simple implementation of an (external RFC) server. This example is based on
* static metadata with non-unicode layout, so the calls only from non-unicode systems can be
* handled.
* Property of SAP AG, Walldorf
* (c) Copyright SAP AG, Walldorf, 2000-2003.
* All rights reserved.
*/
import com.sap.mw.jco.*;
import java.io.InputStream;
import java.util.*;
/**
* @version 1.0
* @author SAP AG, Walldorf
*/
//******************************************************************************
public class Example5 implements JCO.ServerExceptionListener, JCO.ServerStateChangedListener {
//******************************************************************************
/**
* Implementation of our own repository.
* Just dummy extend the basic repository that comes with the JCO package
*/
static public class Repository extends JCO.BasicRepository implements IRepository {
/**
* Creates a new empty repository
*/
public Repository(String name)
{
super(name);
}
}
/** The repository we gonna be using */
protected static IRepository repository;
static {
repository = new Repository("TestRepository");
// non-unicode definition of functions. The server with this repository can
// dispatch calls only from non-unicode systems
//------------------------------------------------------------------------------
// Add function 'STFC_CONNECTION'
//------------------------------------------------------------------------------
JCO.MetaData fmeta = new JCO.MetaData("STFC_CONNECTION");
fmeta.addInfo("REQUTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.IMPORT_PARAMETER, null);
fmeta.addInfo("ECHOTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.EXPORT_PARAMETER, null);
fmeta.addInfo("RESPTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.EXPORT_PARAMETER, null);
repository.addFunctionInterfaceToCache(fmeta);
//------------------------------------------------------------------------------
// Add function 'STFC_STRUCTURE'
//------------------------------------------------------------------------------
fmeta = new JCO.MetaData("STFC_STRUCTURE");
fmeta.addInfo("IMPORTSTRUCT", JCO.TYPE_STRUCTURE, 144, 0, 0, JCO.IMPORT_PARAMETER, "RFCTEST");
fmeta.addInfo("ECHOSTRUCT", JCO.TYPE_STRUCTURE, 144, 0, 0, JCO.EXPORT_PARAMETER, "RFCTEST");
fmeta.addInfo("RESPTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.EXPORT_PARAMETER, null );
fmeta.addInfo("RFCTABLE", JCO.TYPE_TABLE, 144, 0, 0, 0, "RFCTEST");
repository.addFunctionInterfaceToCache(fmeta);
//------------------------------------------------------------------------------
// Add the structure RFCTEST to the structure cache
//------------------------------------------------------------------------------
JCO.MetaData smeta = new JCO.MetaData("RFCTEST");
smeta.addInfo("RFCFLOAT", JCO.TYPE_FLOAT, 8, 0, 0);
smeta.addInfo("RFCCHAR1", JCO.TYPE_CHAR, 1, 8, 0);
smeta.addInfo("RFCINT2", JCO.TYPE_INT2, 2, 10, 0);
smeta.addInfo("RFCINT1", JCO.TYPE_INT1, 1, 12, 0);
smeta.addInfo("RFCICHAR4", JCO.TYPE_CHAR, 4, 13, 0);
smeta.addInfo("RFCINT4", JCO.TYPE_INT, 4, 20, 0);
smeta.addInfo("RFCHEX3", JCO.TYPE_BYTE, 3, 24, 0);
smeta.addInfo("RFCCHAR2", JCO.TYPE_CHAR, 2, 27, 0);
smeta.addInfo("RFCTIME", JCO.TYPE_TIME, 6, 29, 0);
smeta.addInfo("RFRDATE", JCO.TYPE_DATE, 8, 35, 0);
smeta.addInfo("RFCDATA1", JCO.TYPE_CHAR, 50,43, 0);
smeta.addInfo("RFCDATA2", JCO.TYPE_CHAR, 50,93, 0);
repository.addStructureDefinitionToCache(smeta);
}
/**
* Implementation of my own server
*/
static public class Server extends JCO.Server {
/**
* Create an instance of my own server
* @param gwhost the gateway host
* @param gwserv the gateway service number
* @param progid the program id
* @param repository the repository used by the server to lookup the definitions of an inc
*/
public Server(Properties prop, IRepository repository)
{
super(prop,repository);
}
/**
* Not really necessary to override this function but for demonstration purposes...
*/
protected JCO.Function getFunction(String function_name)
{
JCO.Function function = super.getFunction(function_name);
return function;
}
/**
* Not really necessary to override this method but for demonstration purposes...
*/
protected boolean checkAuthorization(String function_name, int authorization_mode,
String authorization_partner, byte[] authorization_key)
{
/* Simply allow everyone to invoke the services */
return true;
}
/**
* Overrides the default method.
* Can handle only the two functions STFC_CONNECTION and STFC_STRUCTURE
*/
protected void handleRequest(JCO.Function function)
{
JCO.ParameterList input = function.getImportParameterList();
JCO.ParameterList output = function.getExportParameterList();
JCO.ParameterList tables = function.getTableParameterList();
input.getBinaryStream("XFILE") ;
System.out.println("handleRequest(" + function.getName() + ")");
if (function.getName().equals("STFC_CONNECTION")) { <------ SAP RFC 호출
output.setValue(input.getString("REQUTEXT"),"ECHOTEXT");
output.setValue("This is a response from Example5.java","RESPTEXT");
}
else if (function.getName().equals("STFC_STRUCTURE")) {
JCO.Structure sin = input.getStructure("IMPORTSTRUCT");
JCO.Structure sout = (JCO.Structure)sin.clone();
try {
System.out.println(sin);
}
catch (Exception ex) {
System.out.println(ex);
}
output.setValue(sout,"ECHOSTRUCT");
output.setValue("This is a response from Example5.java","RESPTEXT");
}//if
else if (function.getName().equals("ZFILE_TEST_JCO")) {
InputStream ttt = input.getBinaryStream("RAW") ;
}
}
}
/** List of servers */
JCO.Server srv[] = new JCO.Server[1];
/**
* Constructor
*/
public Example5()
{
// Yes, we're interested in server exceptions
JCO.addServerExceptionListener(this);
// And we also want to know when the server(s) change their states
JCO.addServerStateChangedListener(this);
}
/**
* Start the server
*/
public void startServers()
{
Properties prop = new Properties() ;
prop.setProperty("jco.server.gwhost", "centsms") ; <----- SAP Host
prop.setProperty("jco.server.progid", "JCO_SERVER") ; <----- SAP Destination Program ID
prop.setProperty("jco.server.gwserv", "sapgw00") ; <----- SAP Gateway
prop.setProperty("jco.server.unicode", "1") ; <----- Unicode 설정 (소스코드 수정필요!)
// Server 1 listens for incoming requests from system 1
// (Change gateway host, service, and program ID according to your needs)
srv[0] = new Server(prop,repository);
// Server 2 listens for incoming requests from system 2
// (Change gateway host, service, and program ID according to your needs)
//srv[1] = new Server("centsms","sapgw00","JCOSERVER02",repository);
for (int i = 0; i < srv.length; i++) {
try {
srv[i].setTrace(true);
srv[i].start();
}
catch (Exception ex) {
System.out.println("Could not start server " + srv[i].getProgID() + ":\n" + ex);
}//try
}//for
}
/**
* Simply prints the text of the exception and a stack trace
*/
public void serverExceptionOccurred(JCO.Server server, Exception ex)
{
System.out.println("Exception in server " + server.getProgID() + ":\n" + ex);
ex.printStackTrace();
}
/**
* Simply prints server state changes
*/
public void serverStateChangeOccurred(JCO.Server server, int old_state, int new_state)
{
System.out.print("Server " + server.getProgID() + " changed state from [");
if ((old_state & JCO.STATE_STOPPED ) != 0) System.out.print(" STOPPED ");
if ((old_state & JCO.STATE_STARTED ) != 0) System.out.print(" STARTED ");
if ((old_state & JCO.STATE_LISTENING ) != 0) System.out.print(" LISTENING ");
if ((old_state & JCO.STATE_TRANSACTION) != 0) System.out.print(" TRANSACTION ");
if ((old_state & JCO.STATE_BUSY ) != 0) System.out.print(" BUSY ");
System.out.print("] to [");
if ((new_state & JCO.STATE_STOPPED ) != 0) System.out.print(" STOPPED ");
if ((new_state & JCO.STATE_STARTED ) != 0) System.out.print(" STARTED ");
if ((new_state & JCO.STATE_LISTENING ) != 0) System.out.print(" LISTENING ");
if ((new_state & JCO.STATE_TRANSACTION) != 0) System.out.print(" TRANSACTION ");
if ((new_state & JCO.STATE_BUSY ) != 0) System.out.print(" BUSY ");
System.out.println("]");
}
public static void main(String[] argv)
{
Example5 obj = new Example5();
obj.startServers();
}
}
* Example5.java - Simple implementation of an (external RFC) server. This example is based on
* static metadata with non-unicode layout, so the calls only from non-unicode systems can be
* handled.
* Property of SAP AG, Walldorf
* (c) Copyright SAP AG, Walldorf, 2000-2003.
* All rights reserved.
*/
import com.sap.mw.jco.*;
import java.io.InputStream;
import java.util.*;
/**
* @version 1.0
* @author SAP AG, Walldorf
*/
//******************************************************************************
public class Example5 implements JCO.ServerExceptionListener, JCO.ServerStateChangedListener {
//******************************************************************************
/**
* Implementation of our own repository.
* Just dummy extend the basic repository that comes with the JCO package
*/
static public class Repository extends JCO.BasicRepository implements IRepository {
/**
* Creates a new empty repository
*/
public Repository(String name)
{
super(name);
}
}
/** The repository we gonna be using */
protected static IRepository repository;
static {
repository = new Repository("TestRepository");
// non-unicode definition of functions. The server with this repository can
// dispatch calls only from non-unicode systems
//------------------------------------------------------------------------------
// Add function 'STFC_CONNECTION'
//------------------------------------------------------------------------------
JCO.MetaData fmeta = new JCO.MetaData("STFC_CONNECTION");
fmeta.addInfo("REQUTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.IMPORT_PARAMETER, null);
fmeta.addInfo("ECHOTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.EXPORT_PARAMETER, null);
fmeta.addInfo("RESPTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.EXPORT_PARAMETER, null);
repository.addFunctionInterfaceToCache(fmeta);
//------------------------------------------------------------------------------
// Add function 'STFC_STRUCTURE'
//------------------------------------------------------------------------------
fmeta = new JCO.MetaData("STFC_STRUCTURE");
fmeta.addInfo("IMPORTSTRUCT", JCO.TYPE_STRUCTURE, 144, 0, 0, JCO.IMPORT_PARAMETER, "RFCTEST");
fmeta.addInfo("ECHOSTRUCT", JCO.TYPE_STRUCTURE, 144, 0, 0, JCO.EXPORT_PARAMETER, "RFCTEST");
fmeta.addInfo("RESPTEXT", JCO.TYPE_CHAR, 255, 0, 0, JCO.EXPORT_PARAMETER, null );
fmeta.addInfo("RFCTABLE", JCO.TYPE_TABLE, 144, 0, 0, 0, "RFCTEST");
repository.addFunctionInterfaceToCache(fmeta);
//------------------------------------------------------------------------------
// Add the structure RFCTEST to the structure cache
//------------------------------------------------------------------------------
JCO.MetaData smeta = new JCO.MetaData("RFCTEST");
smeta.addInfo("RFCFLOAT", JCO.TYPE_FLOAT, 8, 0, 0);
smeta.addInfo("RFCCHAR1", JCO.TYPE_CHAR, 1, 8, 0);
smeta.addInfo("RFCINT2", JCO.TYPE_INT2, 2, 10, 0);
smeta.addInfo("RFCINT1", JCO.TYPE_INT1, 1, 12, 0);
smeta.addInfo("RFCICHAR4", JCO.TYPE_CHAR, 4, 13, 0);
smeta.addInfo("RFCINT4", JCO.TYPE_INT, 4, 20, 0);
smeta.addInfo("RFCHEX3", JCO.TYPE_BYTE, 3, 24, 0);
smeta.addInfo("RFCCHAR2", JCO.TYPE_CHAR, 2, 27, 0);
smeta.addInfo("RFCTIME", JCO.TYPE_TIME, 6, 29, 0);
smeta.addInfo("RFRDATE", JCO.TYPE_DATE, 8, 35, 0);
smeta.addInfo("RFCDATA1", JCO.TYPE_CHAR, 50,43, 0);
smeta.addInfo("RFCDATA2", JCO.TYPE_CHAR, 50,93, 0);
repository.addStructureDefinitionToCache(smeta);
}
/**
* Implementation of my own server
*/
static public class Server extends JCO.Server {
/**
* Create an instance of my own server
* @param gwhost the gateway host
* @param gwserv the gateway service number
* @param progid the program id
* @param repository the repository used by the server to lookup the definitions of an inc
*/
public Server(Properties prop, IRepository repository)
{
super(prop,repository);
}
/**
* Not really necessary to override this function but for demonstration purposes...
*/
protected JCO.Function getFunction(String function_name)
{
JCO.Function function = super.getFunction(function_name);
return function;
}
/**
* Not really necessary to override this method but for demonstration purposes...
*/
protected boolean checkAuthorization(String function_name, int authorization_mode,
String authorization_partner, byte[] authorization_key)
{
/* Simply allow everyone to invoke the services */
return true;
}
/**
* Overrides the default method.
* Can handle only the two functions STFC_CONNECTION and STFC_STRUCTURE
*/
protected void handleRequest(JCO.Function function)
{
JCO.ParameterList input = function.getImportParameterList();
JCO.ParameterList output = function.getExportParameterList();
JCO.ParameterList tables = function.getTableParameterList();
input.getBinaryStream("XFILE") ;
System.out.println("handleRequest(" + function.getName() + ")");
if (function.getName().equals("STFC_CONNECTION")) { <------ SAP RFC 호출
output.setValue(input.getString("REQUTEXT"),"ECHOTEXT");
output.setValue("This is a response from Example5.java","RESPTEXT");
}
else if (function.getName().equals("STFC_STRUCTURE")) {
JCO.Structure sin = input.getStructure("IMPORTSTRUCT");
JCO.Structure sout = (JCO.Structure)sin.clone();
try {
System.out.println(sin);
}
catch (Exception ex) {
System.out.println(ex);
}
output.setValue(sout,"ECHOSTRUCT");
output.setValue("This is a response from Example5.java","RESPTEXT");
}//if
else if (function.getName().equals("ZFILE_TEST_JCO")) {
InputStream ttt = input.getBinaryStream("RAW") ;
}
}
}
/** List of servers */
JCO.Server srv[] = new JCO.Server[1];
/**
* Constructor
*/
public Example5()
{
// Yes, we're interested in server exceptions
JCO.addServerExceptionListener(this);
// And we also want to know when the server(s) change their states
JCO.addServerStateChangedListener(this);
}
/**
* Start the server
*/
public void startServers()
{
Properties prop = new Properties() ;
prop.setProperty("jco.server.gwhost", "centsms") ; <----- SAP Host
prop.setProperty("jco.server.progid", "JCO_SERVER") ; <----- SAP Destination Program ID
prop.setProperty("jco.server.gwserv", "sapgw00") ; <----- SAP Gateway
prop.setProperty("jco.server.unicode", "1") ; <----- Unicode 설정 (소스코드 수정필요!)
// Server 1 listens for incoming requests from system 1
// (Change gateway host, service, and program ID according to your needs)
srv[0] = new Server(prop,repository);
// Server 2 listens for incoming requests from system 2
// (Change gateway host, service, and program ID according to your needs)
//srv[1] = new Server("centsms","sapgw00","JCOSERVER02",repository);
for (int i = 0; i < srv.length; i++) {
try {
srv[i].setTrace(true);
srv[i].start();
}
catch (Exception ex) {
System.out.println("Could not start server " + srv[i].getProgID() + ":\n" + ex);
}//try
}//for
}
/**
* Simply prints the text of the exception and a stack trace
*/
public void serverExceptionOccurred(JCO.Server server, Exception ex)
{
System.out.println("Exception in server " + server.getProgID() + ":\n" + ex);
ex.printStackTrace();
}
/**
* Simply prints server state changes
*/
public void serverStateChangeOccurred(JCO.Server server, int old_state, int new_state)
{
System.out.print("Server " + server.getProgID() + " changed state from [");
if ((old_state & JCO.STATE_STOPPED ) != 0) System.out.print(" STOPPED ");
if ((old_state & JCO.STATE_STARTED ) != 0) System.out.print(" STARTED ");
if ((old_state & JCO.STATE_LISTENING ) != 0) System.out.print(" LISTENING ");
if ((old_state & JCO.STATE_TRANSACTION) != 0) System.out.print(" TRANSACTION ");
if ((old_state & JCO.STATE_BUSY ) != 0) System.out.print(" BUSY ");
System.out.print("] to [");
if ((new_state & JCO.STATE_STOPPED ) != 0) System.out.print(" STOPPED ");
if ((new_state & JCO.STATE_STARTED ) != 0) System.out.print(" STARTED ");
if ((new_state & JCO.STATE_LISTENING ) != 0) System.out.print(" LISTENING ");
if ((new_state & JCO.STATE_TRANSACTION) != 0) System.out.print(" TRANSACTION ");
if ((new_state & JCO.STATE_BUSY ) != 0) System.out.print(" BUSY ");
System.out.println("]");
}
public static void main(String[] argv)
{
Example5 obj = new Example5();
obj.startServers();
}
}
5. SAP Destination 설정
설치버전 : SAP JCo 2.1.9, JDK1.5.0
피드 구독하기:
글 (Atom)




