Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Java Applet, Printer Job
Игорь_Vasinsky  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26059
Пользователь №: 21350
На форуме: 6 лет, 10 месяцев, 10 дней
Карма: 728

Не курю:
1 год, 3 месяца, 26 дней


Вообщем встала передо мной задачка написать апплет для браузера - который при обращении к нему будет отправлять задание на принтер для печати

т.к. с JAVA я не знаком вообще - у меня возник вопрос - возможно ли вообще такое.

Написал я класс апплета, скомпилировал

запуск из консоли даёт печать, а при попытке открытия в браузере - печати нет и нет ошибок.

у JAVA есть средства для работы с принтерами машины, на которой она запускается, но инфа в инете говорит о что - что апплет не может получать доступ к принтерам - для него создаётся песочница.


В итоге я в думках - рыть дальше - чёт я накосячил в коде для JAVA Applet, либо такое реально запрещено.

так же рассматривал такой вариант

 exec("java -jar ".$dir."/PrintZebraPromed.jar", $output); 


без ошибок и на выходе пусто.

сам код для принтера Zebra GK420t

public class PrintZebra extends Applet{
public static String param1;

@Override
public void init () {
String param1 = getParameter("param1");

if (param1 == null)
param1 = "Empty";

PrintZebra data = new PrintZebra();
data.param1 = param1;
}

public static void main(String[] args) {
DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
PrintService[] services = PrintServiceLookup.lookupPrintServices(flavor, null);

if (services.length > 0)
{
PrintService myService = null;
for(PrintService service : services) {
if(service.getName().contains("ZDesigner GK420t")) {
myService = service;

String testData =
"^XA\n"+
"^FO100,75\n"+
"^BCN,100,Y,N,N\n"+
"^FD>:" + service.getName() + "CODE128^FS\n"+
"^XZ";
InputStream is = new ByteArrayInputStream(testData.getBytes());

DocPrintJob job = service.createPrintJob();
Doc doc= new SimpleDoc(is, flavor, null);

try {
job.print(doc, null);

}catch (PrintException e) {
e.printStackTrace();
}
break;
}
}

}

else
{
System.out.println("No PDF printer available.");
}

}



вставка аплета

<html>
<
title>
PrintZebra
</title>
<
body>

<
applet code="PrintZebra.class" width=1 height=1>
<
param name=param1 value=value1>
</
applet>

</
body>
</
html>



есть знатоки в этой области?

компиляция без ошибок

javac PrintZebra.java


запуск из cmd

java PrintZebra
печать пошла

просмотр аплета
appletviewer applet.html
аплет открылся - печати нет

б


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26059
Пользователь №: 21350
На форуме: 6 лет, 10 месяцев, 10 дней
Карма: 728

Не курю:
1 год, 3 месяца, 26 дней


Есть кто шарит в логах JAVA ?

basic: Starting applet teardown
basic: Finished applet teardown
basic: Removed progress listener: sun.plugin.util.ProgressMonitorAdapter@1d36f52
basic: PluginMain.unregisterApplet: 1 from mananger sun.plugin2.applet.Applet2Manager@1871c5b
basic: Added progress listener: sun.plugin.util.ProgressMonitorAdapter@3fc719
security: Expected Main URL: file:/C:/Users/Vasinskij.I/Desktop/java/PrintZebra.jar
basic: Plugin2ClassLoader.addURL parent called for file:/C:/Users/Vasinskij.I/Desktop/java/PrintZebra.jar
security: SSV validation:
running: 1.8.0_91
requested: null
range: null
javaVersionParam: null
Rule Set version: null
network: Created version ID: 1.8.0.91
network: Created version ID: 1.8.0.91
security: continue with running version
security: JUT Record:
plugin2
file://C:\Users\Vasinskij.I\Desktop\java\applet.html: launchjnlp= code=PrintZebra.class codebase=file:///C:/Users/Vasinskij.I/Desktop/java/ name=PrintZebra width=0 archive=PrintZebra.jar height=0 app_model=eJyNU81uEzEQnvy0SduoQqm4gJAQFCFxsMWlSHCKQg9BixT1hwM3d+M2Tp21sWfTDYdKvAQSB96A9+DOM3DlDZBg7N00QUhR9+Bd29/MfN83s99+wYZ3cD81U+bzjI2k1WbOnDxnPWvfmpHUUD61Omwn0E7p6Ex4ibCbTMRM8EwiPz1KXiWwM5I+dcqiMhlCt7zWIrvgx+hUdkGQrixQZp4AR9Kb3KXSI9wtkTkqzXvOiXmiPBK4MxHuBvYBrq FB9bVJRSgQ9rUEtqZCZX0tfATUKcjLNHcK54E7wrOElHFSxktlnJTxhbL94xUsFdxAhVpWiZo4t5Tg0doEJ4ShwM2ZzEbGxcjCkp+doIiRNYys+fzkxcG93z9dA1oDaI+FH/cpeABNaxySBJHj2AQai8rnaslibDxW323rDJrU6GrfICpVyT /VgwAIj3n/JT/10nn+TniV+Us1YQP+WvpLNJZHs0PcFpalbKS8FymHJrCbJhSffjz48l18bUCN6Hr1URY2zMJVM6xF9LwTZiMe1CjL0zWDtP9m2c/lUNX/b2prRtyrbfAzvFsLiRXz57cQOaSpw/fyzAlGoxQDw7JDgot/k1oEdouEwlpNPR3jVEenK/sQ7qyUSsM0UsLt5dm1g4frjAljVDkCXTLWwW7sRvh52GGWT1cvKfVmbzhMDk/sXxJQN7Y=
basic: Applet loaded.
basic: Applet resized and added to parent container
basic: PERF: AppletExecutionRunnable - applet.init() BEGIN ; jvmLaunch dt 266226 us, pluginInit dt 10649512 us, TotalTime: 10915738 us
basic: Applet initialized
basic: Starting applet
basic: completed perf rollup
basic: Applet made visible
basic: Applet started
basic: Told clients applet is started


нормуль всё ?


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
brevis  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 294
Пользователь №: 39616
На форуме: 2 года, 8 месяцев, 11 дней
Карма: 33




У тебя код, который собственно отправляет на печать находится только в main()?
Апплет, насколько я знаю, не вызывает main().

И еще наверное нужно подписать апплет, что бы получить доступ к принтерам и тд.



--------------------
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26059
Пользователь №: 21350
На форуме: 6 лет, 10 месяцев, 10 дней
Карма: 728

Не курю:
1 год, 3 месяца, 26 дней


апплет подписан. про main() - не знал. спасиб - щас попробую


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26059
Пользователь №: 21350
На форуме: 6 лет, 10 месяцев, 10 дней
Карма: 728

Не курю:
1 год, 3 месяца, 26 дней


оЙ молодца !!! перекинул код в другой метод - и всё пучком - при открытии страницы - пошла печать.

Крассава!.


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса