Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [p2-dev] error while loading a remote repository using IMetadataRepositoryManager

One other thought:  I see from your bundles list that you are *not* using the apache httpclient-based provider (missing the org.apache.httpclient and other bundles).  This means that ECF will use the jre/urlconnection based provider.

This is/should be fine...but just fyi Eclipse/p2 uses the httpclient provider...as we jointly deemed it more reliable (although admittedly the problems were with previous/older versions of JRE).  In any case, the httpclient provider has received much more distribution and testing than the JRE provider.

Scott


On 3/14/2012 2:31 AM, Dileepa Jayakody wrote:
Thanks alot Mengxin. Adding the org.eclipse.equinox.p2.transport.ecf bundle to the runtime worked! :)

On Wed, Mar 14, 2012 at 1:58 PM, <p2-dev-request@xxxxxxxxxxx> wrote:
Send p2-dev mailing list submissions to
       p2-dev@xxxxxxxxxxx

To subscribe or unsubscribe via the World Wide Web, visit
       https://dev.eclipse.org/mailman/listinfo/p2-dev
or, via email, send a message with subject or body 'help' to
       p2-dev-request@xxxxxxxxxxx

You can reach the person managing the list at
       p2-dev-owner@xxxxxxxxxxx

When replying, please edit your Subject line so it is more specific
than "Re: Contents of p2-dev digest..."


Today's Topics:

  1. IP CQs waiting on your team (portal on behalf of emo)
  2. Re: error while loading a remote repository using
     IMetadataRepositoryManager (Dileepa Jayakody)
  3. Re: error while loading a remote repository using
     IMetadataRepositoryManager (Mengxin Zhu)


----------------------------------------------------------------------

Message: 1
Date: Wed, 14 Mar 2012 00:00:27 -0400 (EDT)
From: emo@xxxxxxxxxxx (portal on behalf of emo)
To: p2-dev@xxxxxxxxxxx
Subject: [p2-dev] IP CQs waiting on your team
Message-ID: <20120314040027.EEFEC2DCE66@xxxxxxxxxxxxxxxx>

p2-dev,
IPZilla records show that one or more of the projects on which you are
developer are in need of attention.  The following CQs have been in the
'awaiting_project' status for over 3 weeks  and need your team to take
action.

 rt.equinox:

   5932 OSGi Service Platform Core Companion Code -- Juno, nonepl,
sourceandbinary, unmodified, 3 weeks ago
   https://dev.eclipse.org/ipzilla/show_bug.cgi?id=5932

If you have any questions, please do not hesitate to contact your project
lead, PMC member, or the EMO <emo@xxxxxxxxxxx>



------------------------------

Message: 2
Date: Wed, 14 Mar 2012 12:25:20 +0530
From: Dileepa Jayakody <dileepa@xxxxxxxx>
To: p2-dev@xxxxxxxxxxx
Subject: Re: [p2-dev] error while loading a remote repository using
       IMetadataRepositoryManager
Message-ID:
       <CABhueMXPbEEeg6JozQk1yEwNp=EdBY1Lj=hD7j_k0eK14i8Kfg@xxxxxxxxxxxxxx>
Content-Type: text/plain; charset="iso-8859-1"

 Hi Katya,

Thanks a lot for the hints :)
We too are using org.eclipse.ecf for p2 file transferring purposes (we are
not modifying anything under the hood, and simply rely on the default p2
transport). If we look at the bundle states at our product start-up all the
ecf related bundles are in Active state as below.

46    ACTIVE      org.eclipse.core.runtime_3.7.0.v20110110
47    ACTIVE      org.eclipse.ecf_3.1.300.v20110531-2218
48    ACTIVE      org.eclipse.ecf.filetransfer_5.0.0.v20110531-2218
49    ACTIVE      org.eclipse.ecf.identity_3.1.100.v20110531-2218
50    ACTIVE      org.eclipse.ecf.provider.filetransfer_3.2.0.v20110531-2218

So, I think the ecf transports are available to our p2 runtime at this
point.
We are retrieving all the p2 related services via a p2 Agent. This p2 agent
is created  via the IProvisioningAgentProvider service offered by p2. We
load the IMetadataRepositoryManager service from the p2 agent as below.
provisioningAgent.getService(IMetadataRepositoryManager.SERVICE_NAME);
This service is used to retrieve the repo metadata, and it only fails with
remote repos.

So, does this mean the above loaded IMetadataRepositoryManager service
cannot find the ecf transport when it tries to load a remote p2 repo? Is
there any tweaks I can do to explicitly enable ecf transport to above
service?

Thanks,
Dileepa



On Tue, Mar 13, 2012 at 9:30 PM, <p2-dev-request@xxxxxxxxxxx> wrote:

> Send p2-dev mailing list submissions to
>        p2-dev@xxxxxxxxxxx
>
> To subscribe or unsubscribe via the World Wide Web, visit
>        https://dev.eclipse.org/mailman/listinfo/p2-dev
> or, via email, send a message with subject or body 'help' to
>        p2-dev-request@xxxxxxxxxxx
>
> You can reach the person managing the list at
>        p2-dev-owner@xxxxxxxxxxx
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of p2-dev digest..."
>
>
> Today's Topics:
>
>   1. Re: error while loading a remote repository       using
>      IMetadataRepositoryManager (Todorova, Katya)
>   2. shared installs (Domenico Alessi)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 13 Mar 2012 11:38:20 +0100
> From: "Todorova, Katya" <katya.todorova@xxxxxxx>
> To: P2 developer discussions <p2-dev@xxxxxxxxxxx>
> Subject: Re: [p2-dev] error while loading a remote repository   using
>        IMetadataRepositoryManager
> Message-ID:
>        <4C5E2CECD458D344AC75145BAB4F11DE0CF3B5B1AE@xxxxxxxxxxxxxxxxxxxxxxxx
> >
> Content-Type: text/plain; charset="us-ascii"
>
> Hi Dileepa,
>
> A quick look at the source shows two possible reasons for the exception
> below - either there's no transport available at your runtime or the agent
> which is doing the provisioning operation doesn't know about it.
> What kind of transport do you expect to be used for file transfer? (for
> example Eclipse uses ecf) You may also check whether the corresponding
> transport bundles (if available) are started.
>
> Hope this helps,
> Katya
>
> From: p2-dev-bounces@xxxxxxxxxxx [mailto:p2-dev-bounces@xxxxxxxxxxx] On
> Behalf Of Dileepa Jayakody
> Sent: Monday, March 12, 2012 11:21 AM
> To: p2-dev@xxxxxxxxxxx
> Subject: [p2-dev] error while loading a remote repository using
> IMetadataRepositoryManager
>
> Hi Devs,
>
> We are using equinox p2 version:3.7 as the provisioning platform for our
> osgi based product.
> I have an issue with
> org.eclipse.equinox.p2.repository.metadata.IMetadataRepositoryManager when
> I try to load a p2 repository from a remote URI.
> The code works fine with local repos but throws a null-pointer
> @metadataRepositoryManager.loadRepository(location, new
> NullProgressMonitor()); when trying to load a remote repository.
> It seems p2 cannot load an indexFile from the given remote repo URI.
> I tested this with a sample p2 repo both as a local repo and a hosted
> remote repo. It works fine with the local repo but fails when it's given as
> a hosted remote repo :(
>
> Can you guys give me a hint what could be going wrong here?
> Any help on this matter is much appreciated.
>
> Following is the stack-trace;
>
> java.lang.NullPointerException
>    at
> org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadIndexFile(AbstractRepositoryManager.java:721)
>    at
> org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:640)
>    at
> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
>    at
> org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
>    at
> org.wso2.carbon.feature.mgt.core.util.RepositoryUtils.addRepository(RepositoryUtils.java:80)
>    at
> org.wso2.carbon.feature.mgt.services.prov.RepositoryAdminService.addRepository(RepositoryAdminService.java:56)
>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>    at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>    at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>    at java.lang.reflect.Method.invoke(Method.java:597)
>    at
> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>    at
> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>    at
> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>    at
> org.apache.axis2.receivers.AbstractMessageReceiver$AsyncMessageReceiverWorker.run(AbstractMessageReceiver.java:271)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>    at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>    at java.lang.Thread.run(Thread.java:662)
>
>
> Thanks,
> Dileepa
> --
> Dileepa Jayakody,
> Software Engineer, WSO2 Inc.
> Lean . Enterprise . Middleware
>
> Mobile : +94777-857616
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <
> https://dev.eclipse.org/mailman/private/p2-dev/attachments/20120313/6bfbdf16/attachment.htm
> >
>
> ------------------------------
>
> Message: 2
> Date: Tue, 13 Mar 2012 11:07:43 -0400
> From: Domenico Alessi <domenico.alessi@xxxxxxxxxxxx>
> To: P2 developer discussions <p2-dev@xxxxxxxxxxx>
> Subject: [p2-dev] shared installs
> Message-ID:
>        <
> 0ED867EB33AB2B45AAB470D5A64CDBF6191153CDCA@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
>
> Content-Type: text/plain; charset="us-ascii"
>
> HI All,
>
> I have a question regarding shared installs. We have shared location for
> eclipse on the network.  We then have in the eclipse.ini -data and
> -configuration specified.
>
> We have the following scenario:
>
> 1.User starts eclipse and it will create the -data and -configuration
> folders automatically
> 2. the user installs some plugins
> 3. User exits eclipse
> 4. we update the shared location to have new plugins, therefore the p2
> profiles have changed on the shared side of the installation
> 5. The user starts eclipse.  From the Installed software and installation
> history tab, the user has his/her info and shows the user specific plugins,
> but they are not loaded.  We see that the user's features/plugins are not
> seen in the relevant tabs
> 6. If we then install anything else from the user's eclipse it then brings
> back all of the previous plugins and the new one and everything is working
> fine.
>
> So, my question is, instead of having my users install anything to be able
> to bring back their previous plugins, is there anyway via a runtime option
> to trigger p2 so that it does it automatically?
>
> Thanks in advance,
> Dom
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: <
> https://dev.eclipse.org/mailman/private/p2-dev/attachments/20120313/f3a4a0c2/attachment.htm
> >
>
> ------------------------------
>
> _______________________________________________
> p2-dev mailing list
> p2-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/p2-dev
>
>
> End of p2-dev Digest, Vol 45, Issue 10
> **************************************
>



--
Dileepa Jayakody,
Software Engineer, WSO2 Inc.
Lean . Enterprise . Middleware

Mobile : +94777-857616
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dev.eclipse.org/mailman/private/p2-dev/attachments/20120314/38dc3323/attachment.htm>

------------------------------

Message: 3
Date: Wed, 14 Mar 2012 16:27:55 +0800
From: Mengxin Zhu <kane.zhu@xxxxxxxxxxxxx>
To: <p2-dev@xxxxxxxxxxx>
Subject: Re: [p2-dev] error while loading a remote repository using
       IMetadataRepositoryManager
Message-ID: <4F60568B.8000708@xxxxxxxxxxxxx>
Content-Type: text/plain; charset="iso-8859-1"; Format="flowed"

You should check whether the bundle
'org.eclipse.equinox.p2.transport.ecf' is installed and active.

Mengxin Zhu


On 03/14/2012 02:55 PM, Dileepa Jayakody wrote:
> Hi Katya,
>
> Thanks a lot for the hints :)
> We too are using org.eclipse.ecf for p2 file transferring purposes (we
> are not modifying anything under the hood, and simply rely on the
> default p2 transport). If we look at the bundle states at our product
> start-up all the ecf related bundles are in Active state as below.
>
> 46    ACTIVE      org.eclipse.core.runtime_3.7.0.v20110110
> 47    ACTIVE      org.eclipse.ecf_3.1.300.v20110531-2218
> 48    ACTIVE      org.eclipse.ecf.filetransfer_5.0.0.v20110531-2218
> 49    ACTIVE      org.eclipse.ecf.identity_3.1.100.v20110531-2218
> 50    ACTIVE
> org.eclipse.ecf.provider.filetransfer_3.2.0.v20110531-2218
>
> So, I think the ecf transports are available to our p2 runtime at this
> point.
> We are retrieving all the p2 related services via a p2 Agent. This p2
> agent is created  via the IProvisioningAgentProvider service offered
> by p2. We load the IMetadataRepositoryManager service from the p2
> agent as below.
> provisioningAgent.getService(IMetadataRepositoryManager.SERVICE_NAME);
> This service is used to retrieve the repo metadata, and it only fails
> with remote repos.
>
> So, does this mean the above loaded IMetadataRepositoryManager service
> cannot find the ecf transport when it tries to load a remote p2 repo?
> Is there any tweaks I can do to explicitly enable ecf transport to
> above service?
>
> Thanks,
> Dileepa
>
>
>
> On Tue, Mar 13, 2012 at 9:30 PM, <p2-dev-request@xxxxxxxxxxx
> <mailto:p2-dev-request@xxxxxxxxxxx>> wrote:
>
>     Send p2-dev mailing list submissions to
>     p2-dev@xxxxxxxxxxx <mailto:p2-dev@xxxxxxxxxxx>
>
>     To subscribe or unsubscribe via the World Wide Web, visit
>     https://dev.eclipse.org/mailman/listinfo/p2-dev
>     or, via email, send a message with subject or body 'help' to
>     p2-dev-request@xxxxxxxxxxx <mailto:p2-dev-request@xxxxxxxxxxx>
>
>     You can reach the person managing the list at
>     p2-dev-owner@xxxxxxxxxxx <mailto:p2-dev-owner@xxxxxxxxxxx>
>
>     When replying, please edit your Subject line so it is more specific
>     than "Re: Contents of p2-dev digest..."
>
>
>     Today's Topics:
>
>       1. Re: error while loading a remote repository       using
>          IMetadataRepositoryManager (Todorova, Katya)
>       2. shared installs (Domenico Alessi)
>
>
>     ----------------------------------------------------------------------
>
>     Message: 1
>     Date: Tue, 13 Mar 2012 11:38:20 +0100
>     From: "Todorova, Katya" <katya.todorova@xxxxxxx
>     <mailto:katya.todorova@xxxxxxx>>
>     To: P2 developer discussions <p2-dev@xxxxxxxxxxx
>     <mailto:p2-dev@xxxxxxxxxxx>>
>     Subject: Re: [p2-dev] error while loading a remote repository   using
>            IMetadataRepositoryManager
>     Message-ID:
>     <4C5E2CECD458D344AC75145BAB4F11DE0CF3B5B1AE@xxxxxxxxxxxxxxxxxxxxxxxx>
>     Content-Type: text/plain; charset="us-ascii"
>
>     Hi Dileepa,
>
>     A quick look at the source shows two possible reasons for the
>     exception below - either there's no transport available at your
>     runtime or the agent which is doing the provisioning operation
>     doesn't know about it.
>     What kind of transport do you expect to be used for file transfer?
>     (for example Eclipse uses ecf) You may also check whether the
>     corresponding transport bundles (if available) are started.
>
>     Hope this helps,
>     Katya
>
>     From: p2-dev-bounces@xxxxxxxxxxx
>     <mailto:p2-dev-bounces@xxxxxxxxxxx>
>     [mailto:p2-dev-bounces@xxxxxxxxxxx
>     <mailto:p2-dev-bounces@xxxxxxxxxxx>] On Behalf Of Dileepa Jayakody
>     Sent: Monday, March 12, 2012 11:21 AM
>     To: p2-dev@xxxxxxxxxxx <mailto:p2-dev@xxxxxxxxxxx>
>     Subject: [p2-dev] error while loading a remote repository using
>     IMetadataRepositoryManager
>
>     Hi Devs,
>
>     We are using equinox p2 version:3.7 as the provisioning platform
>     for our osgi based product.
>     I have an issue with
>     org.eclipse.equinox.p2.repository.metadata.IMetadataRepositoryManager
>     when I try to load a p2 repository from a remote URI.
>     The code works fine with local repos but throws a null-pointer
>     @metadataRepositoryManager.loadRepository(location, new
>     NullProgressMonitor()); when trying to load a remote repository.
>     It seems p2 cannot load an indexFile from the given remote repo URI.
>     I tested this with a sample p2 repo both as a local repo and a
>     hosted remote repo. It works fine with the local repo but fails
>     when it's given as a hosted remote repo :(
>
>     Can you guys give me a hint what could be going wrong here?
>     Any help on this matter is much appreciated.
>
>     Following is the stack-trace;
>
>     java.lang.NullPointerException
>        at
>     org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadIndexFile(AbstractRepositoryManager.java:721)
>        at
>     org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:640)
>        at
>     org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96)
>        at
>     org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92)
>        at
>     org.wso2.carbon.feature.mgt.core.util.RepositoryUtils.addRepository(RepositoryUtils.java:80)
>        at
>     org.wso2.carbon.feature.mgt.services.prov.RepositoryAdminService.addRepository(RepositoryAdminService.java:56)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
>     sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
>     sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
>     org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>        at
>     org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>        at
>     org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>        at
>     org.apache.axis2.receivers.AbstractMessageReceiver$AsyncMessageReceiverWorker.run(AbstractMessageReceiver.java:271)
>        at
>     java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>        at
>     java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>        at java.lang.Thread.run(Thread.java:662)
>
>
>     Thanks,
>     Dileepa
>     --
>     Dileepa Jayakody,
>     Software Engineer, WSO2 Inc.
>     Lean . Enterprise . Middleware
>
>     Mobile : +94777-857616 <tel:%2B94777-857616>
>     -------------- next part --------------
>     An HTML attachment was scrubbed...
>     URL:
>     <https://dev.eclipse.org/mailman/private/p2-dev/attachments/20120313/6bfbdf16/attachment.htm>
>
>     ------------------------------
>
>     Message: 2
>     Date: Tue, 13 Mar 2012 11:07:43 -0400
>     From: Domenico Alessi <domenico.alessi@xxxxxxxxxxxx
>     <mailto:domenico.alessi@xxxxxxxxxxxx>>
>     To: P2 developer discussions <p2-dev@xxxxxxxxxxx
>     <mailto:p2-dev@xxxxxxxxxxx>>
>     Subject: [p2-dev] shared installs
>     Message-ID:
>     <0ED867EB33AB2B45AAB470D5A64CDBF6191153CDCA@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>     <mailto:0ED867EB33AB2B45AAB470D5A64CDBF6191153CDCA@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>>
>
>     Content-Type: text/plain; charset="us-ascii"
>
>     HI All,
>
>     I have a question regarding shared installs. We have shared
>     location for eclipse on the network.  We then have in the
>     eclipse.ini -data and -configuration specified.
>
>     We have the following scenario:
>
>     1.User starts eclipse and it will create the -data and
>     -configuration folders automatically
>     2. the user installs some plugins
>     3. User exits eclipse
>     4. we update the shared location to have new plugins, therefore
>     the p2 profiles have changed on the shared side of the installation
>     5. The user starts eclipse.  From the Installed software and
>     installation history tab, the user has his/her info and shows the
>     user specific plugins, but they are not loaded.  We see that the
>     user's features/plugins are not seen in the relevant tabs
>     6. If we then install anything else from the user's eclipse it
>     then brings back all of the previous plugins and the new one and
>     everything is working fine.
>
>     So, my question is, instead of having my users install anything to
>     be able to bring back their previous plugins, is there anyway via
>     a runtime option to trigger p2 so that it does it automatically?
>
>     Thanks in advance,
>     Dom
>     -------------- next part --------------
>     An HTML attachment was scrubbed...
>     URL:
>     <https://dev.eclipse.org/mailman/private/p2-dev/attachments/20120313/f3a4a0c2/attachment.htm>
>
>     ------------------------------
>
>     _______________________________________________
>     p2-dev mailing list
>     p2-dev@xxxxxxxxxxx <mailto:p2-dev@xxxxxxxxxxx>
>     https://dev.eclipse.org/mailman/listinfo/p2-dev
>
>
>     End of p2-dev Digest, Vol 45, Issue 10
>     **************************************
>
>
>
>
> --
> Dileepa Jayakody,
> Software Engineer, WSO2 Inc.
> Lean . Enterprise . Middleware
>
> Mobile : +94777-857616
>
>
>
> _______________________________________________
> p2-dev mailing list
> p2-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/p2-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://dev.eclipse.org/mailman/private/p2-dev/attachments/20120314/26a2ead9/attachment.htm>

------------------------------

_______________________________________________
p2-dev mailing list
p2-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/p2-dev


End of p2-dev Digest, Vol 45, Issue 11
**************************************



--
Dileepa Jayakody,
Software Engineer, WSO2 Inc.
Lean . Enterprise . Middleware

Mobile : +94777-857616



_______________________________________________
p2-dev mailing list
p2-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/p2-dev


Back to the top