파일구조
빨간 네모 박스까지가 기본 프로젝트 구성
(아래 Base, FrameBase는 프로젝트 만들 때, 템플릿 선택에 따라 달라짐)

구조
Environment
- ScreanDefinition
- 프로젝트를 만들 때, Desktop,Tablet, Phone을 선택할 수 있다.
- Variables
- 시스템간 값을 주고받을 때 변수 값을 정의
- 예) Single Sign-On 구현 시 로그인 정보 공유
- 보안강화
- 브라우저의 LocalStorage에 저장되어 썼다면 반드시 값을 지워줘야 한다. (지우지 않으면 변수의 값이 계속 남아 있음)
- 값을 셋팅할 때는 암호화해서 넣어 줘야 한다. (평문으로 들어감. 즉, id 나 pwd, 권한 정보들이 들어갈 수 있는데 이런 것들이 평문으로 들어가면 보안 문제 발생)
- 이해를 위한 주저리 : GroupWare 로 로그인을 하고 화면에 접속한다 치면, 로그인 후 GroupWare를 잘 사용하다 특정 버튼을 누르면 nexacro 플랫폼으로 만든 시스템으로 접속할 수도 있음. 사용자 입장에서 GroupWare 화면 접근할때도 로그인하고, 넥사프로 어플리케이션 실행될 때도 로그인 하면 번거로움. 그래서 GroupWare 로그인 시 한번에 로그인 되었으면 좋겠음. 즉, Single Sign-on 기능을 요구할 것임. 이때 Application과 Application간의 인터페이스를 해줄 수 있는 무언가 있어야 값을 전달해 줄 수 있음. 그 때 쓰는게 여기에 있는 Variables.
- Cookies
- Client-Server가 통신할 때, Session값을 유지하는데 필요한 세션변수를 정의하는 곳
- 넥사크로는 세션변수는 정의만 할 뿐 값을 변경하지 않음. (개발자가 관리해야함.)
- WAS에서 sessionid 변수 값을 확인 한 후 해당 변수를 값에 맞도록 반드시 써줘야함.
- HTTP Header
- http 프로토콜 사용시, Client-Server 가 통신할 때 기본 헤더 외의 정보를 추가로 정의 가능.
(넥사크로는 기본적으로 http 프로토콜 사용)
- 방화벽 정책에 따라 특정 헤더 값을 요구 시 사용.
(방화병 정책에 따라 정책에 해당되면 인터넷 사이트 접속이 가능하고, 아니면 차단. 이 때 기본적인 Header정보값을 이용하지 않고 추가적으로 ProjectName이라던지 다른 parameter값 요구하는 경우 있음. 그때 방화벽에서 원하는 변수값을 여기에 정의하고 넘겨주면 모든 통신이 일어날 때마다 자동으로 Header에 값을 추가해줌 )
- Script
- Environment, Variable, Cookies, Header에 값을 넣고 빼는 작업 일어날 수 있는데, 관련 Script를 정의하는 곳
TypeDefinition
- Object
- 하위에 Modules, Objects 탭이 있음
- Objects 탭에 보이는 부분이 개발할 때 쓸 수 있는 컴포넌트 리스트
- 왼쪽 Modules의 + 버튼을 누르면 체크표시된 것들이 자주 사용하는 컴포넌트들로 Objects탭에 표시됨
- Modules 탭에서 보면, Javascript를 모아 놓은 5개의 .json 파일을 제공하고 이게 넥사크로 Engine Library로 보면 됨
- Services
- Resource
- User
- 개발자가 만든 화면 만든 소스를 저장하는 디렉토리 공간을 정의
- TopLeft 템플릿을 선택했다면, Base, FrameBase 두 개가 존재할 것!
- ProtocolAdaptors
- 프로토콜을 인터페이스 하는 부분
- 넥사크로는 기본적으로 http 프로토콜 사용해서 설정할 필요 x
- 은행권 등 별도의 프로토콜을 사용하는 경우, SDK 모듈을 이용해 매핑 파일을 등록하면 하나의 프로토콜처럼 사용가능.
- DeviceAdaptors
- 마우스, 키보드 외에 음성인식, 제스처에 대한 인터페이스 등록 가능
어플리케이션의 global 영역
- Application Variables
- DataSets
- Variables
- 변수 1개에 1개의 값만 가지고 있음
- 해당 어플리케이션이 종료되면 메모리에서 사라짐 (Environment의 Variables와 다름)