Wind socket below Iceland's Eyjafjoell volcano ash plume. South bound wind push ash cloud toward european skies, on May 08, 2010. Photo by Etienne de Malglaive/ABACAPRESS.COM Photo via Newscom


이번에 Flex하고 Java 연결시키는 작업때문에 하지도 않았던 자바 보느라 플랙스 보느라 정책적인 문제 해결하느라 머리가 완전히 스팀이 올랐다고 해야되나. 물론 여기에 제 프로그래밍 기술적인 부분을 올려놓으면 좋겠지만 완전 난잡한 코드에 거의 다른 분들 소스를 참고한데다가 , 또 완벽히 설명할 자신이 없기에 소스 올려놓는것은 제외하고 블로그 2개를 추천드립니다. 물론 이블로그의 특성상 또다른 저와 같은 고민을 하는 분들을 위해서, 혹은 그리고 나중에 제가 다시 보더라고 힌트를 얻기 위해서요 .

http://mudchobo.tomeii.com 머드초보님의 블로그입니다. 이곳에 머드초보님께서 flex를 클라이언트로 java를 서버로 해서, 만든 소스를 보실수 잇습니다. 제가 생각하기 중점은, 플래스하고 자바에서 소켓을 보내고 받는 과정입니다. 물론 중점이겠지만.

약간 덧붙이자면, 여기서 플랙스쪽에서 자바쪽으로 데이터를 받을때 InputStreamReader을 사용하는데
이것을 찾아보니 이것은 값을 뱉어낼때 형태를 지정해야합니다 int형인지 cha형인지 그러니까 2가지 자료형으로 자료를 내 뱉습니다. 그리고 만약 자료가 없을때는 -1을 리턴합니다.


그런데 약간 구경해보니까 XML로 소켓을 받을때 뒤에 \n이라는것을 붙여줘야 된다고 합니다. 그런데 자바쪽에서 보니까 이녀석이 계속 기다리기 만 하는겁니다.

이걸 int로 찍어봤더니 aaa 보낼경우 int값으로 바꾸면 96 96 96 10 0 이렇게 문장을 끝내더군요.

그리고 보낼때 PrintWriter 를 사용하는데 보낼때 저는 XML이라 \n만 넣엇는데 - 안넘어가더라고요.
다시 확인해봤떠니 \0까지 해줘야 되더라고요,,.
pw.print(result_read+"\n\0"); 대략 이정도로?


그리고 http://ummae.tistory.com/ 곳에가면 정책적인 문제를 해결하실수 있습니다.
그러니까 이 플래쉬라는 게 그냥 로컬에서 테스트할때는 소켓이 왔다 갔다가 잘합니다. 그런데 다른컴퓨터를 이용해서 접속할때는 안됩니다. 이걸 어도비에서 정책적으로 막아놨다고 합니다.

기존에는 플랙스내에서 소스 첨부하는 방법하고 정책서버를 따로 운영하는 방법방법이 있었는데 지금은
업데이트 되면서 정책서버를 따로둬야하는듯 합니다.

이곳에 링크를 따라가시면 어도비쪽에서 파이썬 ,펄로 데몬으로 해서 리눅스 환경에서 사용할수 잇는 정책서버를 만들어 올려놓앗습니다. 제가 찾아보았는데 윈도우 쪽은 없는것 같고 윈도우에서 하시려면 직접 만들으셔야 할것 같습니다.

혹시 저같은 분들을 위해서 약간의 정보를 남겨놉니다. 즐거운 하루되세요 .


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > --Java' 카테고리의 다른 글

java sqlite jdbc eclipse build path  (0) 2011.07.14
Java sqlite jdbc  (0) 2011.07.14
[JAVA] atoi, iota  (5) 2011.07.07
Flex 와 Java XMLsocket을 사용하기  (0) 2010.08.19
java.net.BindException: Address already in use  (0) 2010.08.19
이클립스 가릴레오(galileo) 플러그인 지우는 방법  (0) 2009.10.26
JAVA 1.6 한글 api  (2) 2009.10.05

A person holds a cup of Don Francisco coffee in Los Angeles August 12, 2010. Market researcher Packaged Facts projects U.S. coffee market growth of more than 25 percent between 2009 and 2014, with annual sales increasing to $59.6 billion from $47.5 billion. But demand for upscale coffee far outpaces that: the Specialty Coffee Association of America said sales of upscale coffee are growing at about 5 percent to 6 percent a year. Picture taken August 12, 2010. REUTERS/Sam Mircovich  (UNITED STATES - Tags: BUSINESS)



소켓프로그래밍을 하시는데 java.net.BindException: Address already in use 오류가 나온다면 100% 포트가 겹치는것입니다.
프로그래밍하시는 포트번호를 바꾸시던지 아니면 겹치는 프로그램을 종료해버리세요


겹치는걸 쉽게 확인하는 방법은 콘솔창에서 윈도우 기준 netstat -a -n -o 리눅스의 경우 nestat -ntlp
이거면 겹치는 포트를 아실수 있습니다. 리눅스의 경우는 pid가 보이니까 만약 데몬일경우 중지시켜버리거나 Kill 해버리시고 윈도우의 경우 작업표시줄에서 pid를 표시해서 막 어쩌구 저쩌구 나오는데.  그냥 제가 첨부하신 파일 사용하시는게 빠르실듯 합니다. 그러니까 그걸 왜 알려고 하는거면 그 포트를 점유하고 있는게 어떤 프로그램인지 앍 위해서인데
제가 쓰는 프로그램은 정말 알기 쉽게 나옵니다 더군다나 무설치이고요, 그냥 다운받으셔서 바로 실행하시면 됩니다.





저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > --Java' 카테고리의 다른 글

Java sqlite jdbc  (0) 2011.07.14
[JAVA] atoi, iota  (5) 2011.07.07
Flex 와 Java XMLsocket을 사용하기  (0) 2010.08.19
java.net.BindException: Address already in use  (0) 2010.08.19
이클립스 가릴레오(galileo) 플러그인 지우는 방법  (0) 2009.10.26
JAVA 1.6 한글 api  (2) 2009.10.05
예외처리, Exception  (0) 2009.06.17
Jessica
Jessica by 旅の達人黒沢オティス 저작자 표시비영리동일조건 변경허락
흐악... 중간고사 기말고사를 지나서 여름방학이 오고야 말았습니다..
요즘따라 느끼는것은... 무엇인가 만들때 마다 만들때 마다 한계점에 도달한다는거랄까..

생각해보니 그나마 제대로 사용할수 있는 언어가 C(Gcc) , PHP( html 이런거 포함하고 자바 스크립트는..)ㅠㅠ

약간 부끄럽지만 3학년인데 자질마저 의심하고 있습니다. 물론 그동안 제가 가진 정서적인 사고방식에 의하면 매우 뜻깊게 시간을 보낸것 같기도 하지만, 공학적인 사고를 하면 엄청난 비효율적이였는지 나타나고 있네요... 이번방학에 해야될거 당장,, C++ 하고,, JAVA 둘다 객체지향이니 ::

그러니까 제가 이런생각을 하는것이 아,, 그렇네요, 전 학교에서 배우면서 이론과목이 매우 쓸모없다고 생각했었습니다..

그런데 생각해보면 이번 운영체제 Inter-process communication을 배웠었는데. IPC를 하기 위한 한 방법중 하나가 소켓이라는것도 알았네요..

지금 진행하고 있는 일이 잇는데.. 그러니까 구도가 PHP로 만들어진 페이지에서 명령을 내리면 C 라던지 다른 언어로 만들어진 어플리케이션 또는 프로그램이 작동되게 하는 구도입니다..

그런데,, 저는 소켓프로그래밍이 PHP에서도 가능하다고 들어서 PHP에서 echo서버를 구현하려고 했지만 - 약간은 한심한 생각이였던것 같습니다. 물론 제 지식에서는 .. 구글링을 해보니....순수 PHP가지고는 불가능하다는 결론이 내려졌습니다..

그동안 잘못생각했던것은 PHP가 웹에서만 작동한다고 생각했는데.. 어떤 프리랜서 프로그래머 분께서 쓰신글을 보면서 리눅스 콘솔상에서도 작동한다는것을 알게되었습니다.. 물론 글을 다 안읽어봤지만 그렇게 하면 echo 서버 구현도 가능하다고도 생각했지만.

일단 이글의 요점은. 웹페이지로 PHP를 접속했을때. 모 어떤 명령을 내릴수도 있찌만 C라던지 다른 프로그램으로 소켓이 날라가는 경우를 구현이라고 보다는 연습한 경우입니다. 만약 저와 비슷한 지식을 가지시거나 약간의 정보를 필요하셨던분이라면 얻으실수도 있을지 모르겠습니다.

그리고 여기서 사용되는 것은 UDP 입니다.



일단 간단히 연습해본 스샷입니다. 아이피부분은 제거해서 올린것이고,,
참고로 왼쪽 화면 같은 경우는 Gcc를 이용해서 UDP echo listing Server를 만들어서 10000번 포트로 열은 것입니다.


혹시 지나가는 컴쟁이님 계시면,, 약간의 조언을 주신다면 정말로 감사드립니다


차두리 == 로봇두리 == 안드로이드 == OS는 구글 == 안드로이드 2,2.................................................



저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

Oracles Profits Jump 35 Percent Amidst Downsliding Economy

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

이런메세지가 나오면, 현재 mysql이 많이들 돌고 있다고 합니다.

service mysqld start 하나면 끝납니다..

:: 데몬을 활성화 했더니, 이번에는... root 암호가 틀렸다고 나오네- 분명히 저거 맞는데 ;;



저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > Linux' 카테고리의 다른 글

런레벨  (0) 2009.11.24
debian, sudo 설정  (2) 2009.11.23
sshd에서 root 로그인 막기.  (0) 2009.11.23
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)  (0) 2009.11.21
윈도우7 grub 제거하기.  (4) 2009.11.21
xming  (0) 2009.10.28
debian 5 ,한글 메뉴, 한글되게 하기,,  (0) 2009.10.19

void bzero(void *s, size_t n);

:: S의 처음 N 바이트를 0으로 채운다, 메모리 초기화를 목적으로 주로 쓰임

::: bzero 보단 memset을 사용하는것이 좋다.



_이것들은 또 모야,,


저작자 표시 비영리
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'Study > C / C++' 카테고리의 다른 글

sprintf  (2) 2009.05.25
scanf , gets  (0) 2009.05.24
gcc, clear  (0) 2009.05.24
gcc, bzero  (0) 2009.05.23
gcc, waring : warning: incompatible implicit declaration of built-in function  (4) 2009.05.15
[C언어]변수의 초기화  (0) 2009.04.29
[신지식]답변1  (0) 2009.04.19
1

+ Recent posts

티스토리 툴바