Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Разницы между OkHTTP AND Retrofit

Добрый вечер, ребята в чем разница между

Retrofit и okHTTP

это код Retrofit

Java(TM) 2 Platform Standard Edition 5.0
1
2
3
4
5
6
Retrofit retrofit = new Retrofit.Builder()
    .baseUrl("https://api.example.com")
    .addConverterFactory(GsonConverterFactory.create())
    .build();
 
GitHubService service = retrofit.create(GitHubService.class);
А это код okHTTP

Java(TM) 2 Platform Standard Edition 5.0
1
2
3
4
5
6
7
8
9
10
OkHttpClient client = new OkHttpClient();
 
String run(String url) throws IOException {
  Request request = new Request.Builder()
      .url(url)
      .build();
 
  Response response = client.newCall(request).execute();
  return response.body().string();
}
Что лучше всего использовать для работы JSON и с сайтом.


Чтобы с приложение можно было обращаться к сайту вот пример



PHP
1
2
3
4
5
6
$app->post('/user/login', function() use ($app) 
{
    $name = $app->request->post('name');
    $email = $app->request->post('email');
 
});
Добавлено через 33 секунды
Какую библиотеку все таки использовать?
Ответ: Понял, спасибо.
Вопрос: Как OkHTTP ответ вывести в TextView?

Проблема с потоками, так как не давно начал работать с android возникли непонимания.

Для оправки Get запроса использую библиотеку OkHTTP.

Создал класс Get.java:

Java(TM) 2 Platform Standard Edition 5.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import okhttp3.Callback;
import okhttp3.OkHttpClient;
 
public class Get {
    private final OkHttpClient client = new OkHttpClient();
 
    public void run(String url, Callback callback) {
 
        okhttp3.Request request = new okhttp3.Request.Builder()
                .url(url)
                .build();
 
        client.newCall(request).enqueue(callback);
    }
} 
В MainActivity.java вызываю запрос и пытаюсь вывести:

Java(TM) 2 Platform Standard Edition 5.0
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
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
 
import java.io.IOException;
 
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.Response;
 
public class MainActivity extends AppCompatActivity {
    TextView  test123;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        Get test = new Get();
        test123 = (TextView) findViewById(R.id.test);
 
        test.run("https://geocode-maps.yandex.ru/1.x/?geocode=E52.091002%S23.721111",
                new Callback() {
                    @Override
                    public void onFailure(Call call, IOException e) {
 
                    }
 
                    @Override
                    public void onResponse(Call call, Response response) throws IOException {
                        @Override
                        public void run() {
 
                        }
                        test123.setText(response.body().string());
                    }
                });
    }
}
Log error:
FATAL EXCEPTION: OkHttp Dispatcher
Process: com.d_code.myapplication, PID: 5292
android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:6669)
at android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:972)
at android.view.View.requestLayout(View.java:16757)
at android.view.View.requestLayout(View.java:16757)
at android.view.View.requestLayout(View.java:16757)
at android.view.View.requestLayout(View.java:16757)
at android.view.View.requestLayout(View.java:16757)
at android.view.View.requestLayout(View.java:16757)
at android.widget.RelativeLayout.requestLayout(RelativeLayout.java:369)
at android.view.View.requestLayout(View.java:16757)
at android.widget.TextView.checkForRelayout(TextView.java:6781)
at android.widget.TextView.setText(TextView.java:3850)
at android.widget.TextView.setText(TextView.java:3708)
at android.widget.TextView.setText(TextView.java:3683)
at com.d_code.myapplication.MainActivity$1.onResponse(MainActivity.java:33)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:133)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Может кто поможет с решением или кардинально поменяет код что бы он работал?
Ответ:

Не по теме:

тут иногда делают атата, если отправлять в гугл
а вбить вместо лентяя в поиск по форуму тоже не очень удобно - ссылка через какое-то время становится невалидной, поэтому я просто отправляю в поиск по форуму

Вопрос: Okhttp 3 timestamp

Доброго времени суток. Подскажите пожалуйста. Есть приложение, использующее библиотеку okhttp 3. В headers отправляется значение в таком формате TIMESTAMP: 1521979861085. Если оно равно текущей дате запроса, только тогда сервер пропускает. Как сделать так, чтобы каждый раз отправлялось значение равное дате запроса?
Ответ: Если еще актуально:

Java
1
2
3
4
5
6
7
8
9
10
11
12
OkHttpClient client = new OkHttpClient.Builder()
                    .connectTimeout(Constants.timeOut, TimeUnit.SECONDS)
                    .writeTimeout(Constants.timeOut, TimeUnit.SECONDS)
                    .readTimeout(Constants.timeOut, TimeUnit.SECONDS)
                    .addInterceptor(chain -> {
                        Request original = chain.request();
                        Request.Builder requestBuilder = original.newBuilder()
                                .header("Timestamp", String.valueOf(System.currentTimeMillis()));
                        Request request = requestBuilder.build();
                        return chain.proceed(request);
                    })
                    .build();
Вопрос: Jsoap не работает

Вроде всё подключил, но про вызове функции приложение крашиться.
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 link.stuzer.vkonlinetrigger;
 
import android.graphics.Typeface;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.TextView;
 
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
 
import java.io.IOException;
 
public class personPage extends AppCompatActivity{
    database dbHandler;
 
    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_person_page);
 
        checkPersonStatus("testID"); // Тут краш
    }
 
    public void checkPersonStatus(String personid){
        try{
            Document doc = Jsoup.connect("http://vk.com/" + personid).get();
            String style = doc.select("#profile_online_lv").first().data();
            TextView test = (TextView)findViewById(R.id.labelStatus);
            test.setText(style);
        }catch(IOException e){
            //e.printStackTrace();
        }
    }
}
Лог:
Code
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
04-29 19:02:14.548 7780-7780/? I/art: Not late-enabling -Xcheck:jni (already on)
04-29 19:02:14.588 7780-7780/link.stuzer.vkonlinetrigger W/System: ClassLoader referenced unknown path: /data/app/link.stuzer.vkonlinetrigger-1/lib/x86
04-29 19:02:14.731 7780-7803/link.stuzer.vkonlinetrigger D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
04-29 19:02:14.792 7780-7803/link.stuzer.vkonlinetrigger I/OpenGLRenderer: Initialized EGL, version 1.4
04-29 19:02:14.825 7780-7803/link.stuzer.vkonlinetrigger W/EGL_emulation: eglSurfaceAttrib not implemented
04-29 19:02:14.825 7780-7803/link.stuzer.vkonlinetrigger W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xad760ac0, error=EGL_SUCCESS
04-29 19:02:16.301 7780-7780/link.stuzer.vkonlinetrigger D/AndroidRuntime: Shutting down VM
04-29 19:02:16.303 7780-7780/link.stuzer.vkonlinetrigger E/AndroidRuntime: FATAL EXCEPTION: main
                                                                           Process: link.stuzer.vkonlinetrigger, PID: 7780
                                                                           java.lang.RuntimeException: Unable to start activity ComponentInfo{link.stuzer.vkonlinetrigger/link.stuzer.vkonlinetrigger.personPage}: android.os.NetworkOnMainThreadException
                                                                               at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
                                                                               at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
                                                                               at android.app.ActivityThread.-wrap11(ActivityThread.java)
                                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
                                                                               at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                               at android.os.Looper.loop(Looper.java:148)
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                                               at java.lang.reflect.Method.invoke(Native Method)
                                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
                                                                            Caused by: android.os.NetworkOnMainThreadException
                                                                               at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273)
                                                                               at java.net.InetAddress.lookupHostByName(InetAddress.java:431)
                                                                               at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
                                                                               at java.net.InetAddress.getAllByName(InetAddress.java:215)
                                                                               at com.android.okhttp.internal.Network$1.resolveInetAddresses(Network.java:29)
                                                                               at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:188)
                                                                               at com.android.okhttp.internal.http.RouteSelector.nextProxy(RouteSelector.java:157)
                                                                               at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:100)
                                                                               at com.android.okhttp.internal.http.HttpEngine.createNextConnection(HttpEngine.java:357)
                                                                               at com.android.okhttp.internal.http.HttpEngine.nextConnection(HttpEngine.java:340)
                                                                               at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:330)
                                                                               at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:248)
                                                                               at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:433)
                                                                               at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:114)
                                                                               at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:563)
                                                                               at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:540)
                                                                               at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:227)
                                                                               at org.jsoup.helper.HttpConnection.get(HttpConnection.java:216)
                                                                               at link.stuzer.vkonlinetrigger.personPage.checkPersonStatus(personPage.java:42)
                                                                               at link.stuzer.vkonlinetrigger.personPage.onCreate(personPage.java:31)
                                                                               at android.app.Activity.performCreate(Activity.java:6237)
                                                                               at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
                                                                               at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
                                                                               at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)*
                                                                               at android.app.ActivityThread.-wrap11(ActivityThread.java)*
                                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)*
                                                                               at android.os.Handler.dispatchMessage(Handler.java:102)*
                                                                               at android.os.Looper.loop(Looper.java:148)*
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5417)*
                                                                               at java.lang.reflect.Method.invoke(Native Method)*
                                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)*
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)*
В чём может быть проблема?
Ответ:
Code
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
04-30 23:07:17.976 9496-9528/link.stuzer.vkonlinetrigger E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
                                                                           Process: link.stuzer.vkonlinetrigger, PID: 9496
                                                                           java.lang.RuntimeException: An error occurred while executing doInBackground()
                                                                               at android.os.AsyncTask$3.done(AsyncTask.java:309)
                                                                               at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
                                                                               at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
                                                                               at java.util.concurrent.FutureTask.run(FutureTask.java:242)
                                                                               at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
                                                                               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
                                                                               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
                                                                               at java.lang.Thread.run(Thread.java:818)
                                                                            Caused by: java.lang.ExceptionInInitializerError
                                                                               at org.jsoup.nodes.Entities.access$000(Entities.java:17)
                                                                               at org.jsoup.nodes.Entities$EscapeMode.<clinit>(Entities.java:20)
                                                                               at org.jsoup.nodes.Document$OutputSettings.<init>(Document.java:373)
                                                                               at org.jsoup.nodes.Document.<init>(Document.java:18)
                                                                               at org.jsoup.parser.TreeBuilder.initialiseParse(TreeBuilder.java:29)
                                                                               at org.jsoup.parser.TreeBuilder.parse(TreeBuilder.java:42)
                                                                               at org.jsoup.parser.HtmlTreeBuilder.parse(HtmlTreeBuilder.java:53)
                                                                               at org.jsoup.parser.Parser.parseInput(Parser.java:30)
                                                                               at org.jsoup.helper.DataUtil.parseByteData(DataUtil.java:143)
                                                                               at org.jsoup.helper.HttpConnection$Response.parse(HttpConnection.java:653)
                                                                               at org.jsoup.helper.HttpConnection.post(HttpConnection.java:223)
                                                                               at link.stuzer.vkonlinetrigger.personPage$MyTask.doInBackground(personPage.java:57)
                                                                               at link.stuzer.vkonlinetrigger.personPage$MyTask.doInBackground(personPage.java:48)
                                                                               at android.os.AsyncTask$2.call(AsyncTask.java:295)
                                                                               at java.util.concurrent.FutureTask.run(FutureTask.java:237)
                                                                               at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)*
                                                                               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)*
                                                                               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)*
                                                                               at java.lang.Thread.run(Thread.java:818)*
                                                                            Caused by: java.lang.NullPointerException: in == null
                                                                               at java.util.Properties.load(Properties.java:246)
                                                                               at org.jsoup.nodes.Entities.loadEntities(Entities.java:241)
                                                                               at org.jsoup.nodes.Entities.<clinit>(Entities.java:225)
                                                                               at org.jsoup.nodes.Entities.access$000(Entities.java:17)*
                                                                               at org.jsoup.nodes.Entities$EscapeMode.<clinit>(Entities.java:20)*
                                                                               at org.jsoup.nodes.Document$OutputSettings.<init>(Document.java:373)*
                                                                               at org.jsoup.nodes.Document.<init>(Document.java:18)*
                                                                               at org.jsoup.parser.TreeBuilder.initialiseParse(TreeBuilder.java:29)*
                                                                               at org.jsoup.parser.TreeBuilder.parse(TreeBuilder.java:42)*
                                                                               at org.jsoup.parser.HtmlTreeBuilder.parse(HtmlTreeBuilder.java:53)*
                                                                               at org.jsoup.parser.Parser.parseInput(Parser.java:30)*
                                                                               at org.jsoup.helper.DataUtil.parseByteData(DataUtil.java:143)*
                                                                               at org.jsoup.helper.HttpConnection$Response.parse(HttpConnection.java:653)*
                                                                               at org.jsoup.helper.HttpConnection.post(HttpConnection.java:223)*
                                                                               at link.stuzer.vkonlinetrigger.personPage$MyTask.doInBackground(personPage.java:57)*
                                                                               at link.stuzer.vkonlinetrigger.personPage$MyTask.doInBackground(personPage.java:48)*
                                                                               at android.os.AsyncTask$2.call(AsyncTask.java:295)*
                                                                               at java.util.concurrent.FutureTask.run(FutureTask.java:237)*
                                                                               at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)*
                                                                               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)*
                                                                               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)*
                                                                               at java.lang.Thread.run(Thread.java:818)*
04-30 23:07:18.251 9496-9525/link.stuzer.vkonlinetrigger E/Surface: getSlotFromBufferLocked: unknown buffer: 0xabf66a70
04-30 23:07:18.255 9496-9525/link.stuzer.vkonlinetrigger D/OpenGLRenderer: endAllStagingAnimators on 0xab5dd380 (ListView) with handle 0xa3ebeed0
04-30 23:07:23.282 9496-9528/? I/Process: Sending signal. PID: 9496 SIG: 9
Вопрос: FATAL EXCEPTION: main, приложение компилируется, но не запускается

Доброго времени суток, пытаюсь подключить RSS ленту используя XML parser, приложение не запускается.
Подскажите пожалуйста что не так в коде?
Код RSSFeed.java
Java(TM) 2 Platform Standard Edition 5.0
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
package rss.android.rssfeed;
 
import android.app.Activity;
import android.os.Bundle;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.DefaultHandler;
import android.widget.TextView;
import java.net.URL;
import java.io.IOException;
import org.xml.sax.SAXException;
import javax.xml.parsers.ParserConfigurationException;
import org.xml.sax.Attributes;
 
public class RSSFeed extends Activity {
    /** Called when the activity is first created. */
    String rssResult = "";
    boolean item = false;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        TextView rss = (TextView) findViewById(R.id.rss);
        try {
            URL rssUrl = new URL("http://k.img.com.ua/rss/ru/events.xml");
            SAXParserFactory factory = SAXParserFactory.newInstance();
            SAXParser saxParser = factory.newSAXParser();
            XMLReader xmlReader = saxParser.getXMLReader();
            RSSHandler rssHandler = new RSSHandler();
            xmlReader.setContentHandler(rssHandler);
            InputSource inputSource = new InputSource(rssUrl.openStream());
            xmlReader.parse(inputSource);
            rss.setText(rssResult);
        } catch (IOException e) {rss.setText(e.getMessage());
        } catch (SAXException e) {rss.setText(e.getMessage());
        } catch (ParserConfigurationException e) {rss.setText(e.getMessage());
        }
    }
 
    private class RSSHandler extends DefaultHandler {
 
        public void startElement(String uri, String localName, String qName,
                                 Attributes attrs) throws SAXException {
            if (localName.equals("item"))
                item = true;
 
            if (!localName.equals("item") && item == true)
                rssResult = rssResult + localName + ": ";
 
        }
 
        public void endElement(String namespaceURI, String localName,
                               String qName) throws SAXException {
 
        }
 
        public void characters(char[] ch, int start, int length)
                throws SAXException {
            String cdata = new String(ch, start, length);
            if (item == true)
                rssResult = rssResult +(cdata.trim()).replaceAll("\\s+", " ")+"\t";
 
        }
 
    }
 
}
Код main.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
 
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello" />
    <TextView android:id="@+id/rss"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />
</LinearLayout>
Вот что пишет в логе:
HTML5
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
12-23 13:01:14.705 5008-5008/? I/art: Not late-enabling -Xcheck:jni (already on)
12-23 13:01:15.240 5008-5008/? W/Zygote: Slow operation: 1044ms so far, now at Zygote.postForkCommon
12-23 13:01:15.241 5008-5008/? W/Zygote: Slow operation: 1095ms so far, now at zygoteConnection.runOnce: postForkAndSpecialize
12-23 13:01:16.931 5008-5015/rss.android.rssfeed W/art: Suspending all threads took: 19.671ms
12-23 13:01:17.889 5008-5008/rss.android.rssfeed D/AndroidRuntime: Shutting down VM
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime: FATAL EXCEPTION: main
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime: Process: rss.android.rssfeed, PID: 5008
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{rss.android.rssfeed/rss.android.rssfeed.RSSFeed}: android.os.NetworkOnMainThreadException
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:144)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5221)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:  Caused by: android.os.NetworkOnMainThreadException
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1147)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.net.InetAddress.lookupHostByName(InetAddress.java:418)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.net.InetAddress.getAllByName(InetAddress.java:215)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.HostResolver$1.getAllByName(HostResolver.java:29)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:232)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:124)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:272)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:211)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:373)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:323)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:190)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.net.URL.openStream(URL.java:470)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at rss.android.rssfeed.RSSFeed.onCreate(RSSFeed.java:34)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.Activity.performCreate(Activity.java:5937)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.access$800(ActivityThread.java:144)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:135)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5221)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:372)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)*
12-23 13:01:17.898 5008-5008/rss.android.rssfeed E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)*
12-23 13:01:23.040 5008-5015/rss.android.rssfeed W/art: Suspending all threads took: 124.364ms
12-23 13:01:24.602 5008-5008/rss.android.rssfeed I/Process: Sending signal. PID: 5008 SIG: 9
Ответ:
Сообщение от Valakin
твой код заработает
Но всё равно большой шанс ANR
Вопрос: Unfortunately has stopped

Сама ошибка.
Java(TM) 2 Platform Standard Edition 5.0
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
03-30 17:04:35.844 8049-8049/com.tush.appi.tushinomobile E/AndroidRuntime: FATAL EXCEPTION: main
                                                                           Process: com.tush.appi.tushinomobile, PID: 8049
                                                                           android.os.NetworkOnMainThreadException
                                                                               at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1156)
                                                                               at java.net.InetAddress.lookupHostByName(InetAddress.java:418)
                                                                               at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
                                                                               at java.net.InetAddress.getAllByName(InetAddress.java:215)
                                                                               at com.android.okhttp.HostResolver$1.getAllByName(HostResolver.java:29)
                                                                               at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:232)
                                                                               at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:124)
                                                                               at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:272)
                                                                               at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:211)
                                                                               at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:382)
                                                                               at com.android.okhttp.internal.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:106)
                                                                               at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:512)
                                                                               at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:493)
                                                                               at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:205)
                                                                               at org.jsoup.helper.HttpConnection.get(HttpConnection.java:194)
                                                                               at com.tush.appi.tushinomobile.Tushino$1.onClick(Tushino.java:80)
                                                                               at android.view.View.performClick(View.java:4856)
                                                                               at android.view.View$PerformClick.run(View.java:19956)
                                                                               at android.os.Handler.handleCallback(Handler.java:739)
                                                                               at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                               at android.os.Looper.loop(Looper.java:211)
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5373)
                                                                               at java.lang.reflect.Method.invoke(Native Method)
                                                                               at java.lang.reflect.Method.invoke(Method.java:372)
                                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
Код:
Java(TM) 2 Platform Standard Edition 5.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
butTest.setOnClickListener(new View.OnClickListener() {
 
            @Override
            public void onClick(View v) {
 
 
                Document doc;
                try {
                    doc = Jsoup.connect("http://tsgames.ru/").get();
                    tvInfo.setText(doc.title());
                } catch (IOException e) {
 
                }
            }
        });
В чем проблема?
Ответ: Alexvp, у asynctask много альтернатив есть. И вообще, для каждого случая надо подбирать свой вариант. Я не вижу смысла в данном примере использовать IntentService
Вопрос: Ошибка OutOfMemory в Service

Используется
Retrofit и GsonConverterFactory


Есть фрагнмент поиска, при открытии запускается сервис и периодически(8 секунд) получает json - до выполнения условия, а во фрагменте ProgressBar.

При каждом получении данных
запускаю Service для актуализации данных в сервисе

Java
1
2
3
4
5
Intent service = new Intent(ctx, find.class);
                                    service.putExtra(Constants.OPEN, false);
                                    service.putExtra(Constants.INFO_TYPE, 1);
                                    service.putExtra(Constants.Serializable_CLASS, response.body().Data);
                                    context.startService(service);

в сервисе актуализирую данные след образом

Java
1
2
3
4
5
6
7
8
9
 for(int i = 0; i< List.size(); i++){
            if (List.get(i).Id.equalsIgnoreCase(fiClass.Id)){
                List.set(i, fiClass);
                Log.d("service", "Изменил "+fiClass.Id);
                return;
            }
        }
        Log.d("service", "Добавил "+fiClass.Id);
        List.add(fiClass);

Минуту работает и валится..OutOfMemory. Что делаю не так?

Добавлено через 14 минут
XML
1
2
3
4
5
6
7
8
9
10
11
FATAL EXCEPTION: main
                                                                  Process: su.el_teh.taxiya, PID: 32694
                                                                  java.lang.OutOfMemoryError: Could not allocate JNI Env
                                                                      at java.lang.Thread.nativeCreate(Native Method)
                                                                      at java.lang.Thread.start(Thread.java:1063)
                                                                      at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:921)
                                                                      at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1339)
                                                                      at com.squareup.okhttp.Dispatcher.enqueue(Dispatcher.java:110)
                                                                      at com.squareup.okhttp.Call.enqueue(Call.java:113)
                                                                      at com.squareup.okhttp.Call.enqueue(Call.java:105)
                                                                      at retrofit.OkHttpCall.enqueue(OkHttpCall.java:70)
Добавлено через 44 минуты
В сервисе создается RespClass один раз при создании сервиса и вызывается метод create - периодичностью 8 секунд.

из-за этого может быть OutOfMemory?


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
 public class RespClass {
 
 
public void create(Model model){
            Retrofit restAdapter = new Retrofit.Builder()
                .baseUrl(singleton.serverURL)
                .addConverterFactory(GsonConverterFactory.create())
                .build();
        restAdapter.client().setReadTimeout(60, TimeUnit.SECONDS);
        restAdapter.client().setConnectTimeout(10, TimeUnit.SECONDS);
        TaxiAPI post = restAdapter.create(TaxiAPI.class);
        try {
            post.create(model).enqueue(new retrofit.Callback<Apig>() {
                @Override
                public void onResponse(retrofit.Response<Apig> response, Retrofit retrofit) {
                   
                }
 
                @Override
                public void onFailure(Throwable t) {
                    Log.d("TX", "ERRORRR " + t.getMessage());
                   }
            });
        } catch (Exception ex)
        {
            ex.printStackTrace();
        }
    }
 
}
Ответ: Паблито,
Когда из активности вызывался метод такого не было..

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

Сообщение от Паблито
успевает ли выполнится за эти 8 сек

Сейчас я имею:

таймер на 8 секунд и в таймере выполняется следующее

for (int i = o; i<list.size();i++{
RespClass.create(model);
}

Можно обойтись без таймера? чтобы цикл выполнялся последовательно?

Добавлено через 1 минуту
Сообщение от OlegJV
Что мешает запустить сервис один раз, а потом передавать в него данные. Через Intent например.
Я не так делаю? Мешает незнание всех методов передачи данных в сервис

Сообщение от ILNAR_93
запускаю Service для актуализации данных в сервисе


Java
1
2
3
4
5
Intent service = new Intent(ctx, find.class);
service.putExtra(Constants.OPEN, false);
service.putExtra(Constants.INFO_TYPE, 1);
service.putExtra(Constants.Serializable_CLASS, response.body().Data);
context.startService(service);
Насколько я знаю сервис создается только 1 раз, а далее уже onCreate не выполняется у сервиса
Вопрос: Ошибка при работе с JSON

база на локальном сервере, если переходить по URL в браузере все выводит...андроид - нет
вот така от ошибка...
даже добавить нечего
Caused by: org.springframework.http.converter.HttpMessageNotReadableException: Could not read JSON: Can not deserialize instance of com.example.rocti.appgrape.Grape out of START_ARRAY token
at [Source: buffer(com.android.okhttp.internal.http.HttpConnection$ChunkedSource@a274645).inputStream(); line: 1, column: 1]; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of com.example.rocti.appgrape.Grape out of START_ARRAY token
at [Source: buffer(com.android.okhttp.internal.http.HttpConnection$ChunkedSource@a274645).inputStream(); line: 1, column: 1]
URL
Java
1
private static final String URL = "http://192.168.137.178:8080/accounts";
__________________________________________________________________________
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private class GrapeTask extends AsyncTask<Void,Void,Grape>{
 
        @Override
        protected Grape doInBackground(Void... voids) {//в этом методе ошибка
            RestTemplate template = new RestTemplate();
            template.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
            return template.getForObject(URL,Grape.class);
        }
 
        @Override
        protected void onPostExecute(Grape grape) {
            contentList.add(grape);
            grapeAdapter.notifyDataSetChanged();
        }
    }
________________________________________________________________________________
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
public class Grape {
    private int id;
    private String name;
    private String phone;
    public Grape(){}
    public Grape(int id, String name, String phone){
        this.id=id;
        this.name = name;
        this.phone=phone;
    }
    public Grape(String name, String phone){
        this.name = name;
        this.phone=phone;
    }
 
    public void setId(int id) {
        this.id = id;
    }
 
    public int getId() {
        return id;
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public String getPhone() {
        return phone;
    }
 
    public void setPhone(String phone) {
        this.phone = phone;
    }
}
Ответ: есть ошибки но уже не с JSON...
если ничего не получится то отпишусь позднее
спасибо пока что на этом

Добавлено через 31 минуту
ЗАРАБОТАЛО))))
Вопрос: Разработка сервера для приложения на устройстве Android

Всем привет. разрабатываю сервер для приложения Android. Пишу сервер на Intellij IDEA написал вроде верно нет нигде ошибок и подчёркиваний, запуск происходит хорошо о когда произвожу переходы в локальном сервере появляется ошибка.
как это можно исправить и в чём проблема....
HTML5
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
HTTP Status 500 - Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Unable to acquire JDBC Connection
 
type Exception report
 
message Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Unable to acquire JDBC Connection
 
description The server encountered an internal error that prevented it from fulfilling this request.
 
exception
 
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Unable to acquire JDBC Connection
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
 
org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Unable to acquire JDBC Connection
    org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:431)
    org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
    org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:463)
    org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:276)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:131)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
    com.sun.proxy.$Proxy42.findAll(Unknown Source)
    com.qoobico.remindme.server.service.ReminderServiceImpl.getAll(ReminderServiceImpl.java:17)
    com.qoobico.remindme.server.controller.ReminderController.getAllReminders(ReminderController.java:19)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.lang.reflect.Method.invoke(Method.java:498)
    org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
    org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
    org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:806)
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:729)
    org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
    org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
    org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
 
org.hibernate.exception.GenericJDBCException: Unable to acquire JDBC Connection
    org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:47)
    org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109)
    org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:95)
    org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:90)
    org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:112)
    org.hibernate.internal.SessionImpl.connection(SessionImpl.java:488)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.lang.reflect.Method.invoke(Method.java:498)
    org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:211)
    org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:196)
    org.springframework.orm.jpa.vendor.HibernateJpaDialect$HibernateConnectionHandle.doGetConnection(HibernateJpaDialect.java:385)
    org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:153)
    org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:380)
    org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
    org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:463)
    org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:276)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:131)
    org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
    org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
    org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:806)
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:729)
    org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
    org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
    org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
    org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
    org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
    org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
root cause
 
java.sql.SQLException: Cannot create PoolableConnectionFactory (FATAL: role "adminvzwl923" does not exist)
    org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:2294)
    org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:2039)
    org.apache.commons.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:1533)
    org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122)
    org.hibernate.internal.AbstractSessionImpl$NonContextualJdbcConnectionAccess.obtainConnection(AbstractSessionImpl.java:382)
    org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:87)
    org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.getPhysicalConnection(LogicalConnectionManagedImpl.java:112)
    org.hibernate.internal.SessionImpl.connection(SessionImpl.java:488)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.lang.reflect.Method.invoke(Method.java:498)
    org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:211)
    org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:196)
    org.springframework.orm.jpa.vendor.HibernateJpaDialect$HibernateConnectionHandle.doGetConnection(HibernateJpaDialect.java:385)
    org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:153)
    org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:380)
    org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
    org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:463)
    org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:276)
    org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:136)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:131)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
    org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
    org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
    com.sun.proxy.$Proxy42.findAll(Unknown Source)
    com.qoobico.remindme.server.service.ReminderServiceImpl.getAll(ReminderServiceImpl.java:17)
    com.qoobico.remindme.server.controller.ReminderController.getAllReminders(ReminderController.java:19)
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    java.lang.reflect.Method.invoke(Method.java:498)
    org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221)
    org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137)
    org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110)
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:806)
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:729)
    оrg.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.75 logs.
 
Apache Tomcat/7.0.75
Ответ:
Сообщение от KEKCoGEN
Raitek, вы методом тыка программируете чтоли?

Покажите код таблиц и конфига БД
я разобрался)) 2 слова в создании одной из таблиц были лишнии) точнее если расчитвать на работу с 1 таблицей то они нужна а на работу с 2-мя и более они мешают
Вопрос: Прочитать большой JSON

Есть очень большой JSON по ссылке

Я его читаю следующим кодом
Java(TM) 2 Platform Standard Edition 5.0
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
private  String getJSONObject(String _url) throws Exception {
 
        OkHttpClient client;
        String json = null;
        try {
 
 
 
            Request request = new Request.Builder()
                    .url(_url)
                    .build();
            client = new OkHttpClient();
 
 
 
            final Call call = client.newCall(request);
            Response response = call.execute();
            if (response.isSuccessful())
                json = response.body().string();
 
            Log.d("Func", json);
 
            writeToFile(json);
 
        } catch (IOException e) {
            Log.d("TAG", "Exception: " + e.toString());
        }
 
        return json;
    }
Использую библиотеку OkHttp.В итоге JSON прочитать получается,но я не уверен что читаю его до конца. Я его в лог выводил и в текстовый файл(файл получился размером 92.5 кБ). Но как я смотрю толи выводится в лог и текстовый файл немного не в том порядке толи не доконца понять не могу(так как концовка в текстовом файле получилась немного другая чем у исходного JSON). Подскажите пожалуйста как можно на сто процентов удостовериться, что JSON читается полностью? Или как можно изменить код чтения, чтобы данный JSON был прочитан полностью на 100 процентов?
Ответ: _Night_Scream_, да AsyncHttpClient. Рекомендую, хотя каждому своё.