| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| TCP сървър на JAVA http://mcu-bg.com/mcu_site/viewtopic.php?f=16&t=10088 |
Страница 1 от 1 |
| Автор: | E1 [ Пон Апр 30, 2012 12:30 pm ] |
| Заглавие: | TCP сървър на JAVA |
Някой може ли да обясни с няколко думи как може да се накара TCP сървър(Java) да върне файл(например jpg или pdf)? Искам да извиквам от браузъра: http://localhost:8080/test.pdf, при което да се отваря въпросния файл. Имам инсталиран Tomcat, който е конфигуриран на порт 8080. Единственото, което не знам е, как в самия сървър да пренасоча към файла. Например, да преправя този код, с GET да връща test.pdf: import java.io.*; import java.net.*; class TCPServer { public static void main(String argv[]) throws Exception { String clientSentence; String capitalizedSentence; ServerSocket welcomeSocket = new ServerSocket(8080); while(true) { Socket connectionSocket = welcomeSocket.accept(); BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream())); DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream()); clientSentence = inFromClient.readLine(); System.out.println("Received: " + clientSentence); capitalizedSentence = clientSentence.toUpperCase() + '\n'; outToClient.writeBytes(capitalizedSentence); } } } |
|
| Автор: | ike [ Пон Апр 30, 2012 2:52 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
Не ти ли трябва HTTP сървър, а не TCP? http://docs.oracle.com/javase/6/docs/jr ... mmary.html |
|
| Автор: | E1 [ Пон Апр 30, 2012 3:42 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
Трябва ми TCP. Но нещо не успявам да намеря пример, удобен за адаптиране. |
|
| Автор: | E1 [ Съб Май 12, 2012 5:13 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
Успях с предходната част. Сега искам index.html да включва автоматично връщане на определен вид файлове в текущата директория(например, .doc). Целта е да се обновява автоматично списъкът, когато изтрия или добавя файл. |
|
| Автор: | NikB [ Съб Май 12, 2012 8:27 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
И какъв е проблема като получиш в сървъра заявка за index.html: - да изчетеш файловете в папката; - да си направиш списъка; - да го форматираш HTML; - да му сложиш хедъра; - и да го върнеш като отговор? Екстрите - после (по-добре ще бъде списъка с файловете да е предварително направен, но ефективните начини, които знам, са зависими от ОС - MSDN ReadDirectoryChangesW function ) |
|
| Автор: | E1 [ Нед Май 13, 2012 1:17 am ] |
| Заглавие: | Re: TCP сървър на JAVA |
Май не го обясних много добре... Искам в index.html да се променя автоматично списъкът с файловете, които се предлагат. С доста ровене стигнах до един пример, който използва аплет за целта, като има няколко ограничения. Обаче се зарежда и реално не действа. Става дума за това: http://www.rgagnon.com/javadetails/java-0185.html По самия сървър, който симулирам имам следния въпрос: Когато го тестам от компютъра, на който е инсталиран - работи. Опитвам се отдалечено да пристъпя чрез IP/index.html, но ми връща 404, което тълкувам, че намира сървъра, но не и файла. Къде го търси? В папката, в от която се стартира сървъра ли и защо се получава това?(деактивирам Firewall при тестовете). (Имайте предвид, че с Java се занимавам съвсем отскоро) |
|
| Автор: | E1 [ Нед Май 13, 2012 1:48 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
Ще трябва да се откажа от това, доколкото виждам. Едва накарах сървъра да тръгне, сега ако трябва да си "приказва" с index... |
|
| Автор: | NikB [ Нед Май 13, 2012 1:58 pm ] | |||||||||
| Заглавие: | Re: TCP сървър на JAVA | |||||||||
Стига глупости! Всеки амбициозен десетокласник може да напише подобно нещо, ако има кой да му направи сървъра. Не се отказвай. |
||||||||||
| Автор: | E1 [ Нед Май 13, 2012 2:29 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
Сървър имам. Знам как да открия кой файл се иска, но вече три дни стоя до 3-4 сутринта, а не мога да намеря код за сортиране, който да връща листинг на файловете в директорията. Вярно, че търсех за клиентската страна, но ми идва в повече да започна ровенето отначало за сървърната страна. На всичко отгоре, идея си нямам как да вкарам върнатото от сървъра в HTML. Ще ми трябват още няколко дни за това. И всичко само за идеята. Принципно, не обичам да се отказвам, но като сложа на везната, че нищо не получавам от цялата операция(освен да си погъделичкам самолюбието)... |
|
| Автор: | NikB [ Нед Май 13, 2012 2:44 pm ] |
| Заглавие: | Re: TCP сървър на JAVA |
Аз не работя на Java (имам сложен един еклипс, ама не съм го изучил Значи: 1. Когато в сървъра получиш заявка за Index.html - изпрати към клиента нещо свое (например само текста "Proba"). 2. След това виж как се прави списък от наличните файлове (на мен ще ми отнеме час, да ти го направя на Java - 100% го има в нета, но след 10м започва F1 от Барселоба 3. Обходи списъка с файловете и от името на всеки файл формирай елемент от списък (или от таблица или div) на HTML и получения стринг (или масив от стрингове) го прати към клиента |
|
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|