Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Grog

Документация по пакету UploadFilesLib

26.06.2009, 20:34. Показов 1864. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если кто имеет документацию на пакет UploadFilesLib, от компании IBM скиньте пожалуйста ссылку. Замечательный пакет для перекачки файлов на сервер.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.06.2009, 20:34
Ответы с готовыми решениями:

Информация по пакету Combinatorica
Доброго времени суток, уважаемые посетители форума. Возникла необходимость изучить возможности комбинаторных вычислений в программе...

Определить http по tcp пакету
Доброго времени суток, уважаемые форумчане! По википедии и в сниффере wireshark в IP-пакете есть явное указание на протокол передачи...

Как узнать к какому пакету относится ярлык?
Насколько понимаю, на панели Unity расположены ярлыки приложений и один пакет может проецировать несколько ярлыков. Вопрос такой - как...

5
4 / 4 / 1
Регистрация: 13.08.2008
Сообщений: 931
26.06.2009, 22:31
если доков не найдешь, то возьми FileUpload из Jakarta Commons. Джакартовцы всегда качественные доки на код пишут.
0
0 / 0 / 1
Регистрация: 29.05.2009
Сообщений: 52
27.06.2009, 05:47
Совсем недавно был подобный топик:
http://www.relib.com/forums/topic.asp?id=778576
0
Grog
27.06.2009, 16:18
Документацию я так и не нашел.
Было две ссылки:
http://www.eteacher.ru/section/74/UploadFilesLib.jar
http://www.javable.com/columns/serv_side/workshop/17/
Первая мертвая, вторая без документации.
В общем, пакет содержит 8 классов, я их разкомпилировал сейчас выложу, может кому пригодиться…
Grog
27.06.2009, 16:18
Документацию я так и не нашел.
Было две ссылки:
http://www.eteacher.ru/section/74/UploadFilesLib.jar
http://www.javable.com/columns/serv_side/workshop/17/
Первая мертвая, вторая без документации.
В общем, пакет содержит 8 классов, я их разкомпилировал сейчас выложу, может кому пригодиться…
Grog
27.06.2009, 16:19
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package com.ibm.useful.http;
 
import java.io.Serializable;
 
public class FileData implements Serializable {
 
    private String fileName = null;
    private byte[] byteData = null;
    private String contentType = null;
 
    public byte[] getByteData()
    {
        return byteData;
    }
 
    public String getContentType()
    {
        return contentType;
    }
 
    public String getFileName()
    {
        return fileName;
    }
 
    public void setByteData(byte[] newValue)
    {
        byteData = newValue;
    }
 
    public void setContentType(String newValue)
    {
        contentType = newValue;
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
// 
// SourceAgain (TM) v1.10j (C) 2003 Ahpah Software Inc
// 
 
package com.ibm.useful.http;
 
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.StringTokenizer;
 
class HttpHeader extends Hashtable {
 
    private static final int MAX_HEADER_SIZE = 5000;
    private final String CRLF = '\n';
    private static boolean verbose = false;
    private String version = 'HTTP/1.1';
    private String method = 'GET';
    private String urlString = 'http://host:port';
    private String responseMessage = 'responseMessage';
    private int responseCode = 0;
    private boolean isResponse = false;
    private URL url = null;
    private PropertyChangeSupport support = new PropertyChangeSupport( this );
Warning #2008: Inheritance relationship can not be determined because java/beans/PropertyChangeListener can not be found.
 
    public synchronized void addPropertyChangeListener(PropertyChangeListener l)
    {
        support.addPropertyChangeListener( l );
    }
 
    public void firePropertyChange(String propertyName, Object oldValue, Object newValue)
    {
        support.firePropertyChange( propertyName, oldValue, newValue );
    }
 
    public String getHeader()
    {
        Enumeration keys = keys();
        Enumeration elem = elements();
        String r = getVersion();
        int c = 0;
 
        if( isResponseHeader() )
            r = String.valueOf( r ) + ' ' + getResponseCode() + ' ' + getResponseMessage();
        else
            r = String.valueOf( getMethod() ) + ' ' + getURL().getFile() + ' ' + r;
        r = String.valueOf( r ) + '\n';
        while( keys.hasMoreElements() )
        {
            String n = null;
            String v = null;
 
            if( c > 0 )
                r = String.valueOf( r ) + '\n';
            n = (String) keys.nextElement();
            v = (String) elem.nextElement();
            r = String.valueOf( r ) + n + ': ' + v;
            ++c;
        }
        return String.valueOf( r ) + '\n' + '\n';
    }
 
    public void getHeader(OutputStream os)
    {
        String s = getHeader();
 
        try
        {
            os.write( s.getBytes() );
        }
        catch( IOException e )
        {
            if( verbose )
                e.printStackTrace();
        }
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package com.ibm.useful.http;
 
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.FilterOutputStream;
import java.io.IOException;
import java.io.InputStream;<BR  >    {
        propertyChange = new PropertyChangeSupport( this );
        is = null;
        length = 0;
        whatIsSet = -1;
        FileName = null;
        urlString = null;
        fieldUserName = '';
        fieldUserPassword = '';
    }
 
    public StreamHelper(InputStream is, int length)
    {
        propertyChange = new PropertyChangeSupport( this );
        is = null;
        length = 0;
        whatIsSet = -1;
        FileName = null;
        urlString = null;
        fieldUserName = '';
        fieldUserPassword = '';
        setInputStream( is );
        setLengthToRead( length );
    }
 
    public StreamHelper(String urlString)
        throws IOException
    {
        this( new URL( urlString ) );
    }
Warning #2008: Inheritance relationship can not be determined because java/beans/PropertyChangeListener can not be found.
 
    public synchronized void addPropertyChangeListener(PropertyChangeListener listener)
    {
        propertyChange.addPropertyChangeListener( listener );
    }
 
    private static String encode(String s)
    {
        BASE64Encoder coder = new BASE64Encoder();
        String ret = new String( coder.encodeBuffer( s.getBytes() ) );
 
        if( ret.endsWith( '\n' ) )
            ret = ret.substring( 0, ret.length() - 2 );
        return ret;
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
package com.ibm.useful.http;
 
import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.URL;
import java.util.Hashtable;
import sun.misc.BASE64Encoder;
import sun.misc.CharacterEncoder;
 
public class HttpFileTransfer {
 
    public HttpFileTransfer()
    {
        HttpHeader h = new HttpHeader();
 
        h.setVersion( '1.1' );
        h.put( 'Accept', 'image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */*' );
        h.put( 'Accept-Ranges', 'bytes' );
        h.put( 'Accept-Encoding', 'gzip' );
        h.put( 'Connection', 'close' );
        h.put( 'Accept-Language', 'en' );
        h.put( 'User-Agent', 'ServletFileTransfer' );
        h.put( 'Content-type', 'application/octet-stream' );
        setHttpHeader( h );
        setTriggerAction( 1 );
    }
 
    private HttpHeader header;
    private String resultMessage;
    private String fileName;
    private String destPath;
    private URL resultURL;
    private String queryStringFile;
    private String urlString;
    public static final int WRITE = 1;
    public static final int READ = 2;
    protected static final boolean verbose = true;
    private static final String CRLF = '\n';
    private transient PropertyChangeSupport support = new PropertyChangeSupport( this );
    private int triggerAction = 2;
    private String fieldUserPassword = '';
    private String fieldUserName = '';
Warning #2008: Inheritance relationship can not be determined because java/beans/PropertyChangeListener can not be found.
 
    public synchronized void addPropertyChangeListener(PropertyChangeListener l)
    {
        support.addPropertyChangeListener( l );
    }
 
    private static void closeConnection(Socket socket)
    {
        try
        {
            socket.close();
        }
        catch( IOException e )
        {
            e.printStackTrace();
        }
    }
 
    pri 
            HttpSender.contentType = s2;
        }
        catch( Throwable throwable1 )
        {
            throwable1.printStackTrace();
        }
    }
 
    public void triggerAction()
    {
        HttpHeader httpheader = getHttpHeader();
        String s = new String( 'action=' );
        String s1 = null;
        ByteArrayOutputStream out = null;
 
        if( getTriggerAction() == 1 )
            s = String.valueOf( s ) + 'PUT';
        else
            s = String.valueOf( s ) + 'GET';
        s1 = getQueryStringFile();
        if( s1 != null && s1.trim().length() > 0 )
            s = String.valueOf( s ) + '&file=' + s1;
        s = String.valueOf( s ) + '&fcontent=';
        out = new ByteArrayOutputStream();
        try
        {
            out.write( s.getBytes() );
        }
        catch( Exception unused12 )
        {
        }
        try
        {
            String s2 = getFileName();
            FileInputStream fileinputstream = new FileInputStream( s2 );
            int allbytes = fileinputstream.available();
            int balength = 4096;
            byte[] ba = new byte[balength];
 
            while( allbytes > balength )
            {
                fileinputstream.read( ba );
                encode( ba, out );
                allbytes -= balength;
            }
            if( allbytes > 0 )
            {
                byte[] ba1 = new byte[allbytes];
 
                fileinputstream.read( ba1 );
                encode( ba1, out );
            }
            httpheader.setURLString( getURLString() );
            switch( getTriggerAction() )
            {
                case 2:
                    getFile();
                    break;
                case 1:
                    putFile( httpheader.getURLString(), out.toByteArray() );
                    break;
                default:
                    break;
            }
        }
        catch( Throwable throwable1 )
        {
            throwable1.printStackTrace();
        }
    }
 
    static 
    {
        int i = 0;
 
        for( i = 97; i <= 122; ++i )
            dontNeedEncoding.set( i );
        for( i = 65; i <= 90; ++i )
            dontNeedEncoding.set( i );
        for( i = 48; i <= 57; ++i )
            dontNeedEncoding.set( i );
        dontNeedEncoding.set( 32 );
        dontNeedEncoding.set( 45 );
        dontNeedEncoding.set( 95 );
        dontNeedEncoding.set( 46 );
        dontNeedEncoding.set( 42 );
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
package com.ibm.useful.http;
 
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
import sun.misc.CharacterDecoder;
import sun.misc.CharacterEncoder;
 
public class HttpBasicAuthorizationHelper {
 
    private static BASE64Encoder encoder = null;
    private static BASE64Decoder decoder = null;
 
    private static BASE64Decoder getDecoder()
    {
        if( decoder == null )
            decoder = new BASE64Decoder();
        return decoder;
    }
 
    private static BASE64Encoder getEncoder()
    {
        if( encoder == null )
            encoder = new BASE64Encoder();
        return encoder;
    }
 
    public static String getHeader(String user, String password)
    {
        String text = String.valueOf( user ) + ':' + password;
        byte[] byteUserPassword = text.getBytes();
        String encodedUserPassword = getEncoder().encode( byteUserPassword );
 
        return 'Basic ' + encodedUserPassword;
    }
 
    public static String[] getUserNameAndPassword(String headerValue)
        throws IllegalArgumentException
    {
        ublic FileData getFileData(String name)
    {
        if( postParameters == null )
            return null;
        else
        {
            Vector v = (Vector) postParameters.get( name );
 
            if( v == null )
                return null;
            else
            {
                Object o = v.elementAt( 0 );
 
                if( o instanceof String )
                    return null;
                else if( o instanceof FileData )
                    return (FileData) o;
                else
                    return null;
            }
        }
    }
 
    public FileData[] getFileDataArray(String key)
    {
        if( postParameters == null )
            return null;
        else
        {
            Vector v = (Vector) postParameters.get( key );
 
            if( v == null )
                return null;
            else
            {
                int l = v.size();
                FileData[] sarr = new FileData[l];
                Enumeration en = v.elements();
                int i = 0;
                Object[] o = null;
 
                while( en.hasMoreElements() )
                {
                    o = en.nextElement();
                    if( !( o instanceof FileData ) )
                        continue;
                    sarr[i++] = (FileData) o;
                }
                o = new FileData[i];
                for( i = 0; i < o.length; ++i )
                    o[i] = sarr[i];
                return (FileData[]) o;
            }
        }
    }
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.06.2009, 16:19
Помогаю со студенческими работами здесь

Нужна информация по интерфейсу ImageCompare и по пакету java.awt.Canvas
Для решения задачи необходимо имплементировать интерфейс ImageCompare, а также используется пакет java.awt.Canvas , помогите пожалуста их...

Документация
Приветствую всех, у меня такая ситуация. Начали у себя внедрять Lotus. Как всегда не все гладко с первого раза. Нормальной литературы на...

Документация
Подскажите как правильно составить Договор на поисковую оптимизацию или аудит. Может кто-то может поделиться примерами этих договоров, а то...

документация Qt
не подскажете, где можно скачать документацию по Qt в фрмате doc || docx? или есть у кого?

Документация c++
Знаю что есть просто суперская документация по java, сам пользуюсь не нарадуюсь, есть нормальная ли документация по с++? php? кроме MSDN,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru