Страница 1 из 3

из PHP в JSP

Добавлено: 28 июл 2004, 20:32
uncledm
День добрый, уважаемые.

Наблюдается у меня проблема. Есть элементарный скрипт на ПХП

<?php
$text=$HTTP_POST_VARS["v"];
$file=fopen("data.txt","w+");
@fwrite ($file, $text);
@fclose ($file);
?>

Сей скрипт прекрасно работает, однако очень надо чтобы был эквивалент на JSP. Прошу помощи !!!

Добавлено: 28 июл 2004, 21:10
AiK
uncledm, а в чём засада-то?

Параметр получить можно примерно так:

Код: Выделить всё

 String text = new String(request.getParameter("v").getBytes("windows-1251"));
Запись в файл осуществляется стандартным образом. Если затык тут - добро пожаловать в соответствующий раздел форума

Добавлено: 28 июл 2004, 21:23
uncledm
Простите лам... чайника люди добрые. Слово JSP услышал 4 часа назад. Задача локальная и решить надо быстро (PHP Скрипт с FLASH MX игрушки).

Добавлено: 28 июл 2004, 23:58
AiK
PHP Скрипт с FLASH MX
Я таки не понял и причём тут Java?

Добавлено: 29 июл 2004, 18:00
uncledm
Я таки не понял и причём тут Java?
А я и сам не понял, человек от которого зависит размещение FLASH на сайте заявил буквально следующее - "PHP технология устаревшая, наш сайт на яве, необходимо применить JSP". Опровергнуть подобное заявление я не в состоянии. Вы только поймите правильно - ActionScript на Flash MX язык, на мой взгляд, простой, а готовую серверную часть на PHP было найти проще, чем на JSP. Материалы по JSP я подобрал, изучаю, но ради небольшого скрипта вникать в суть языка... полезно но не оправдано.
- добро пожаловать в соответствующий раздел форума
-Это в который? Я так понимаю мне нужен раздел где вопрос "что это за маленькие буквочки и почему они все такие разные" будет воспринят с должным терпением.

Добавлено: 29 июл 2004, 20:24
Oscar
uncledm,
соответствующий раздел
- имелось ввиду раздел Java

Реализация задания, примерно, такова

Код: Выделить всё

import java.io.*;

String text = new String(request.getParameter("v").getBytes("windows-1251"));

FileWriter fileToWrite = null;
BufferedWriter bw = null;

try {
  fileToWrite = new FileWriter("data.txt");

  bw = new BufferedWriter(fileToWrite);

  bw.write(text);

  bw.flush();
  bw.close();

} catch (IOException e) {
  System.out.println(e.getMessage());
}
Только это всё нужно в какой-то определённый метод класса запихнуть .. Да и сам класс не помешало бы создать :-)

Особенности JSP мне правда мало знакомы, пока что ..

P.S. Но всё равно не ясно при чём тут Flash ? Он передаёт этот самый параметр v, чтоли?..

Добавлено: 29 июл 2004, 20:33
uncledm
Вах Спасибо!!! Будем разбираться. А параметр V строка с парами переменная=значение для Flash объекта LoadVars(). Flash в процессе снимает переменные, изменяет и записывет в файл data.txt

Добавлено: 30 июл 2004, 10:41
uncledm
Здрасте еще раз. сделали код .JSP пока не работает может быть кто усмотрит ошибки? PLS

Код: Выделить всё

<%@ page import="java.io.*" session="false"%>
<%!
public void WriteText(String text)
{
	FileWriter fileToWrite = null;				
	BufferedWriter bw = null;
	
	try { 
		fileToWrite = new FileWriter("data.txt"); 
		bw = new BufferedWriter(fileToWrite);

		bw.write(text);

		bw.flush();								
		bw.close();

	} catch (IOException e) {					
		System.out.println(e.getMessage());
	}
}
%>

<%
String text = new String(request.getParameter("v").getBytes("windows-1251")); 
WriteText(text);
%>

Добавлено: 30 июл 2004, 11:14
Oscar
А где же класс? :-)
Или в JSP таки не нужно?
Что-то сомневаюсь ))

И функцию тоже нельзя произвольно называть .. наверное ..
может
public static void main(String[] args)
какой-нибудь должен быть ...

Вы по работающему примеру "Hello world" делали?

Добавлено: 30 июл 2004, 11:50
AiK
Oscar, main в JSP - это полный перебор. Он может быть у класса, если планируется его запускать как самостоятельное приложение. [Кстати, один из стилей программирования прописывать в main класса вызов набора тестов этого самого класса.]
uncledm, вообще-то за то время, что ты вопрошаешь о помощи можно было выучить не только JSP, но и Java. Как технологию и язык, а не как набор классов и методов работы с ними. Твоя ошибка в том, что ты думаешь, что J в JSP произошла от JavaScript, тогда как она произошла от Java. Поэтому функция не может быть подвешена в воздухе, она должна быть членом какого-то класса, или, говоря проще - методом класса.

Итого, пиши так:

Код: Выделить всё

private class StupidClass{
    public static void stupidMethod(String text){
    // тут твоя реализация
    }
}
Поскольку метод объявлен статическим, то для его вызова создавать экземпляр класса нет необходимости.