Giter Club home page Giter Club logo

r2-streamer-kotlin's Introduction

⚠️ ᴛʜɪs ʀᴇᴘᴏsɪᴛᴏʀʏ ɪs ᴅᴇᴘʀᴇᴄᴀᴛᴇᴅ ⚠️

We moved all the r2-*-kotlin modules to a single repository: kotlin-toolkit.

r2-streamer-kotlin's People

Contributors

aferditamuriqi avatar clementbmn avatar hrishikesh-kadam avatar idmostapha avatar johanpoirier avatar mickael-menu avatar pavelric avatar qnga avatar stevenzeck avatar twaddington avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

r2-streamer-kotlin's Issues

Unable to fetch the json manifest

When i try to fetch the json manifest with te following URL http://localhost:43201/e3ab7e31-2895-4c80-b69e-beb96776fec6/manifest, it always fail and print this error:

07-19 09:14:12.153 22200-22471/org.readium.r2reader I/System.out: ManifestHandler JsonGenerationException | JsonMappingException com.fasterxml.jackson.databind.JsonMappingException: No serializer found for class org.json.JSONObject and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: org.readium.r2.shared.Publication["coverLink"]->org.readium.r2.shared.Link["properties"]->org.readium.r2.shared.Properties["json"])

I'm testing this on the develop branch. It gaves me the same output wether I'm using the streamer alone or in the r2-testapp-kotlin app.

No route to manifest.json?

I have a hard time to understand how the webpub manifest is served by the server.
I thought the route was: http://localhost:someport/some-uuid-to-the-book/manifest.json

All I see is http://localhost:someport/some-uuid-to-the-book/manifest (with the route defined here). And that fails (see #19).

I checked the Go implementation of the streamer, the Swift implementation and there is a route to manifest.json. Why not on the Kotlin streamer?

Absolute URLs in manifest?

When I open a book with the streamer, I got the manifest.json:

{
  "metadata": {
    "languages": [
      "fr"
    ],
    "publicationDate": "2013-10-24",
    "identifier": "9782864YYYXXX",
    "modified": "Fri Apr 17 15:42:42 GMT+02:00 2015",
    "title": "Some book",
    "rendition": {
      "layout": "Reflowable"
    },
    "rights": " ",
    "authors": [
      {
        "name": "Some author",
        "roles": [
          "aut"
        ]
      }
    ],
    "publishers": [
      {
        "name": "Some publisher"
      }
    ]
  },
  "links": [
    {
      "type": "application/webpub+json",
      "href": "http://localhost:48792/somebook.epub/manifest.json",
      "rel": [
        "self"
      ],
      "properties": "org.readium.r2.shared.Properties@88c372a"
    }
  ],
  "spine": [
    {
      "type": "application/xhtml+xml",
      "href": "/EPUB/Content/cover.xhtml",
      "properties": "org.readium.r2.shared.Properties@fe791b"
    },
    {
      "type": "application/xhtml+xml",
      "href": "/EPUB/Content/pb.xhtml",
      "properties": "org.readium.r2.shared.Properties@b21fab8"
    },
    {
      "type": "application/xhtml+xml",
      "href": "/EPUB/Content/9782864973072-0.xhtml",
      "properties": "org.readium.r2.shared.Properties@a2c0091"
    },
    {
      "type": "application/xhtml+xml",
      "href": "/EPUB/Content/9782864973072-1.xhtml",
      "properties": "org.readium.r2.shared.Properties@e0e9bf6"
    }
  ],
  "resources": [
    {
      "title": "nav",
      "type": "application/xhtml+xml",
      "href": "/EPUB/Navigation/nav.xhtml",
      "rel": [
        "contents"
      ],
      "properties": "org.readium.r2.shared.Properties@ab8f093"
    },
    {
      "title": "css",
      "type": "text/css",
      "href": "/EPUB/Style/style.css",
      "properties": "org.readium.r2.shared.Properties@ebd68d0"
    },
    {
      "title": "cover-image",
      "type": "image/jpeg",
      "href": "/EPUB/Image/cover.jpg",
      "rel": [
        "cover"
      ],
      "properties": "org.readium.r2.shared.Properties@d7530c9"
    },
    {
      "title": "image-0",
      "type": "image/jpeg",
      "href": "/EPUB/Image/9782864973072-0.jpg",
      "properties": "org.readium.r2.shared.Properties@43933ce"
    }
  ]
}

I have two questions about it:

  • Why the href is absolute? in the example from Hadrien Gardeur, all the resources and spines have relative URLs (and it causes some issues in third-parties navigators).
  • Why do we have some sort of pointer in the properties attribute?

gradle build failed

I am trying to build the latest develop branch but its giving errors.

Screenshot 2021-02-23 at 19 10 24

same error for both ./gradle clean build and ./gradlew :r2-streamer:build

what could be issue ?
I am trying to publish a package to local maven repo.

RouterNanoHTTPD cannot find

Failed to resolve: org.nanohttpd:nanohttpd:2.3.2. In my project. what is the issue? Is this class not included in this version?

No SMIL file support

There is no SMIL file support for this library while extracting the epub. Please suggest any date by which your going to give the support for that as modern epub viewer requires that feature.

Cannot access 'org.nanohttpd.router.RouterNanoHTTPD' which is a supertype of 'org.readium.r2.streamer.server.Server'.

Bug Report

What happened?

Cannot use streamer.server.Server, keep getting Cannot access 'org.nanohttpd.router.RouterNanoHTTPD' which is a supertype of 'org.readium.r2.streamer.server.Server'. Check your module classpath for missing or conflicting dependencies.

Expected behavior

How to reproduce?

Environment

Readium versions

  • r2-shared-kotlin: 2.0.0
  • r2-streamer-kotlin: 2.0.0
  • r2-navigator-kotlin: 2.0.0
  • r2-opds-kotlin:
  • r2-lcp-kotlin: 2.0.0

Development environment

  • OS: macOS 11.2.1
  • IDE: Android Studio 4.2.1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.