Старый 02.08.2008, 12:32   #1
Новичок
 
Аватар для Rovno
 
Регистрация: 28.02.2008
Сообщений: 59
Вес репутации: 197
Rovno на пути к лучшему
По умолчанию Установка кода на .jsp

Кто нибуть пробовал каким-либо способом установить код на такие сайты??!
Rovno вне форума   Ответить с цитированием
Старый 02.08.2008, 13:29   #2
Специалист
 
Аватар для Se0man
 
Регистрация: 01.07.2008
Сообщений: 163
Вес репутации: 0
Se0man не любят в этих краяхSe0man не любят в этих краях
По умолчанию

неа не пробовал. тут или саппорту пиши, или нанимай кого нить, тут люди под любые сайты код пишут, читай подписи
Se0man вне форума   Ответить с цитированием
Старый 25.09.2008, 16:30   #3
Новичок
 
Аватар для dema501
 
Регистрация: 22.09.2008
Сообщений: 10
Вес репутации: 0
dema501 на пути к лучшему
Отправить сообщение для dema501 с помощью ICQ
По умолчанию

я прикручивал если актуально обращайся.
dema501 вне форума   Ответить с цитированием
Старый 23.06.2009, 17:14   #4
Новичок
 
Регистрация: 25.09.2008
Сообщений: 20
Вес репутации: 0
yak скоро станет известен
По умолчанию

Сам код:

PHP код:
<%String url Utils.doEncodeURL(requestresponserequest.getRequestURI()+((request.getQueryString() != null)  ? "?"+request.getQueryString() : ""));%>
<
jsp:include page="/include/sape.jsp" flush="true">
<
jsp:param name="url" value="<%=%>" />
</
jsp:include> 
sape.jsp:
PHP код:
<%@ page language="java" contentType="text/html; charset=windows-1251" pageEncoding="cp1251" %>
<%@ 
page import="
    javax.xml.parsers.DocumentBuilder,
    javax.xml.parsers.DocumentBuilderFactory,

    org.w3c.dom.*,
    org.jaxen.dom.DOMXPath,

    org.jaxen.XPath,
    org.jaxen.XPathSyntaxException,
    org.jaxen.JaxenException,

    java.util.List,
    java.util.Iterator,

    java.util.*" 
%>
<%
String url  Utils.getParameter(request"url");


class 
SAPE_client {
    private 
String _request_uri            =    "";
    private 
String _db_file                =    "/*****/sapedb.xml";

    public 
SAPE_client(String request_uriboolean verbose) {
        
this._request_uri request_uri;
    }

    private 
String Load_links() {
        
StringBuffer sb = new StringBuffer();

        try {
            
DocumentBuilderFactory factory DocumentBuilderFactory.newInstance();

            
factory.setNamespaceAware(true);
            
DocumentBuilder builder factory.newDocumentBuilder();
            
            
org.w3c.dom.Document doc builder.parsethis._db_file );

            
String delimiter "# ";

            try {
                
delimiter doc.getElementsByTagName("sape").item(0).getAttributes().getNamedItem("delimiter").getNodeValue();
            }
            catch (
Exception e) {
                
e.printStackTrace();
                
delimiter "# ";
            }


            
XPath xpath = new DOMXPath"//page[@uri='"+this._request_uri+"']/link" );

//            sb.append( "XPah:h " + xpath + "<br>\n");
            
            
List results xpath.selectNodesdoc );

            if (
results.isEmpty() || results.size() == 0) {
                
xpath =  new DOMXPath"//page[@uri='"+this._request_uri.replaceAll("index.html""")+"']/link" );
                
results xpath.selectNodesdoc );
            }

            if (
results.isEmpty() || results.size() == 0) {
                
xpath = new DOMXPath"//page[@uri='*']" );
                
results xpath.selectNodesdoc );
            }

//            sb.append( "XPah:h " + xpath + "<br>\n");


            
if (!results.isEmpty()) {
                
Iterator resultIter results.iterator();
            
                while ( 
resultIter.hasNext() ) {
                    
Object o resultIter.next();
                    try {
                        
Node n = (Nodeo;

                        if (
n.hasChildNodes()) {
                            
NodeList cn =    n.getChildNodes();
                            for (
int i 0cn.getLength(); ++i) {
                                
sb.append(cn.item(i).getNodeValue() + delimiter);
                            }
                        }
                        else {
                            
sb.append(n.getNodeValue());
                        }
                    }
                    catch (
Exception e) {
                        
e.printStackTrace();
                    }
                }
            }
        }
        catch (
XPathSyntaxException e) {
            
System.err.printlne.getMultilineMessage() );
        }
        catch (
JaxenException e) {
            
e.printStackTrace();
        }
        catch (
Exception e) {
            
e.printStackTrace();
        }

        return 
sb.toString();
    }
}

out.println(new SAPE_client(urltrue).Load_links());
%> 

PS Ссылки надо класть самому или кроном. Забирать в виде xml их:
http://dispenser-01.sape.ru/code.php...t=windows-1251

Добавлено через 5 минут
Предыдущий вариант работоспособен на резине. Для томката можно попробывать это:
http://code.google.com/p/javasape/

Последний раз редактировалось yak; 23.06.2009 в 17:14. Причина: Добавлено сообщение
yak вне форума   Ответить с цитированием
Старый 29.11.2010, 13:01   #5
Новичок
 
Регистрация: 29.11.2010
Сообщений: 1
Вес репутации: 0
poiradar на пути к лучшему
По умолчанию

пользуюсь javasape от Vasyl Stashuk. Примерно с субботы, вытяжка ссылок с сапе перестала работать. В логах томката вижу такое:

2010-11-29 09:54:01,065 [http-8080-1] ERROR javasape.SapeConnection - Can't parse Sape data
java.lang.IllegalStateException: Encountered unknown type [ ], str= ";}s:48:"/pois/Sevastopol-1877/Sightseeings_Architecture/";a:3:{i:0;s:120:" <a href="http://www.roller-m.ru/content/page_309_0.html" target="_blank">п©пҐп╣п╡п╪п╟я┌п╦я┤п╣я│п╨п╦п╣ п╨п╬п╩п╣я│п╟</a> ";i:1;s:192:"

(5 страниц рукописного текста)

п╦я│п╨я┐я│я│я┌п╡п╣пҐпҐя▀п╣ п╣п╩п╨п╦ п╠п╬п╩я▄я┬п╬пЁп╬ я─п╟пЇп╪п╣я─п╟</a>. ";}s:16:"__sape_new_sape_ips__";a:2:{i:0;s:13:"188 .72.80.205";i:1;s:13:"188.72.80.201"
;}}
at javasape.SerializedPhpParser.parse(SerializedPhpPa rser.java:86)
at javasape.SerializedPhpParser.parseArray(Serialized PhpParser.java:112)
at javasape.SerializedPhpParser.parse(SerializedPhpPa rser.java:78)
at javasape.SapeConnection.getData(SapeConnection.jav a:89)
at javasape.SapePageLinks.<init>(SapePageLinks.java:2 3)
at javasape.Sape.getPageLinks(Sape.java:23)

поставил новейшую версию из свн - не помогло.
Очевидно, что вместо пробела [ ], метод parse() ожидает буквы i, d, b, s, a, O, N

Как пофиксить проблему по-быстрому - в свете "нового алгоритма изменения текста ссылок"? или лучше подождать Василия?
poiradar вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка кода на b2m fortuna Установка кода на различные движки 9 18.09.2008 20:08
Установка кода на пхп mail-money Установка кода на различные движки 6 28.05.2008 17:56
Установка кода на E-107 boneonis Контекстные ссылки и все, что с ними связано 1 06.02.2008 03:19
Установка кода на asp juleta Установка кода на различные движки 4 12.12.2007 21:08
Установка кода на Set CMS NOMAD86 Установка кода на различные движки 3 24.11.2007 13:05


Часовой пояс GMT +3, время: 04:25.